2015-11-04 32 views

回答

2

这只是一个意见,但我会说这不是明智的。

  • 你偏离标准大家都知道。人们突然需要考虑循环的正确性和意图。这浪费了宝贵的开发时间,可能比几个字节的内存更昂贵。
  • 当某个点某人从100变为更大的值时,它也会引入微妙的错误:编译器不会抱怨,但是您可能会创建一个无限循环。

例如

for (short s = 0; s < Short.MAX_VALUE + 1; s++) 

永远不会停止,因为s++溢出默默,而在s < Short.MAX_VALUE + 1s提升为int

使用小于int的类型最适合用于需要2字节值的语义的情况&如何溢出,而不是试图节省空间。

0

真的有不好的一面吧,看到这个前面回答一个类似的问题:

https://stackoverflow.com/a/14532302/5490728

它甚至有关的性能可能损失会谈。

此外,正如zapl已经指出的那样,协作者可能不会习惯它并产生错误。

(我读过它应该可以将这个问题标记为重复15个声望,但是我在'flag'菜单中找不到该选项,我希望这种回答也可以。)

相关问题