java - Long vs Integer,long vs int,什么时候使用?

标签 java types numbers

有时我看到 API 使用 longLongintInteger,但我想不通如何做出决定?

我应该什么时候选择?

最佳答案

LonglongObject形式,Integerint的对象形式.

long 使用 64 bits . int 使用 32 位,因此最多只能保存 ±20 亿的数字(-231 到 +231-1)。

你应该使用longint,除非你需要使用继承自Object的方法,例如hashcode Java.util.collections 方法通常使用盒装(Object-wrapped)版本,因为它们需要适用于任何 Object 和原语类型,如 intlong,不是 Object

另一个区别是 longintpass-by-value,而 LongIntegerpass-by-reference 值,与所有非原始 Java 类型一样。因此,如果可以修改 LongInteger (不是,它们在不使用 JNI 代码的情况下是不可变的),还有另一个理由使用其中一个.

最后一个区别是 LongInteger 可以是 null

关于java - Long vs Integer,long vs int,什么时候使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5857812/

相关文章:

java - Spring 批处理中的压平加工结果

java - Java泛型中的 "super"关键字有什么问题

用于汇编样式十六进制数字的 C# 正则表达式

c - 如何简化我的 "equation"以在 3 和 5 之间切换?

java - 创建守护线程的 ThreadPoolExecutors 是否需要关闭?

java - 不支持的 major.minor 版本 49.0

javascript - 强类型对象中的 TypeScript 循环约束

generics - 无法创建简洁和通用的错误类型

c# - 如何将对象转换为类型?

php - 如何在 php 中定义自定义数字基数?