在Java Doc中说明Java包含八种原始数据类型:
-
byte (B)
1字节,取值范围:-28 ~ 28 - 1 -
short (S)
2字节,取值范围:-215 ~ 215 - 1 -
int (default)
4字节,取值范围:-231 ~ 231 - 1 -
long (L)
8字节,取值范围:-263 ~ 263 - 1 -
float (F)
4字节,取值范围:-3.4E38 ~ -1.4E-45 & 1.4E-45 ~ 3.4E38 -
double (default)
8字节,取值范围:-1.7E308 ~ -4.9E-324 & 4.9E-324 ~ 1.7E308 - char
- boolean
而String不属于原始数据类型,属于非基本类型,要使用new
来创建对象。
String name=new String("Tom");
String name="Tom";
(语法糖写法)
Java中做与数字相关的操作时,也不总用原始数据类型,抽象类java.lang.Number
中提供了六种包装子类:
(BigDecimal,BigInteger ,AtomicInteger,AtomicLong四子类此处未涉及)
当需要对于数字做一些特殊操作的时候就需要用到这样的包装类而不是原始数据类型。
(详见:https://docs.oracle.com/javase/tutorial/java/data/numberclasses.html)
注:除了BigDecimal,BigInteger
为不可变类型外,其余包装子类均线程不安全。
网友评论