我知道隐式转换是由编译器和虚拟机自动完成的,当 Java 不确定结果是否有效时,需要显式转换来转换数据类型。转换应该在基元之间或对象之间完成。
我的问题是:如果我的应用程序既使用整数又使用长整数 - 我应该对这两种类型都使用 long
吗?或者向下转换 long
?或者转换为 int
?
对这两种类型使用 long 会导致一些问题吗?
最佳答案
我可能会为正确的操作选择正确的数据类型,long
如果我需要 long
,int
如果 int
足以满足我的要求。 常识是认为对int
使用long
可能会降低您的速度,但这同样取决于特定的JVM 实现。您必须根据您要定位的范围来决定。
同样,如果您的程序中涉及大量转换,那么最好选择像 long
这样的数据类型,它可以容纳比 int
更大的范围并使您免于在该过程中发生强制转换和数据丢失。话虽如此,long
可能比 int
慢,但在现代处理器和 JVM 中我怀疑这可能会影响很大。
可能吧,这里的高手能更好的回答这个问题。
关于java - 在实际应用程序生活中使用向下转型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17676402/