原文:http://blog.csdn.net/xiaowenjie/article/details/9395999
java 8种原生数据类型
1) 整型:使用int表示。(32位)
2) 字节型:使用byte表示。(表示-128~127之间的256个整数, 8位)。
3)短整型:使用short表示。(16位)
4)长整型:使用long表示。(64位)
5)单精度浮点型:使用float表示。所谓浮点型,指的就是小数,也叫做实数,比如1.2。
6)双精度浮点型:使用double表示。双精度浮点型表示的数据范围要比单精度浮点型大。
7)字符型:使用char表示(char是character的缩写)。所谓字符,就是单个的字符表示,比如字母a,或者中文张,外面用单引号包围上。比如char a = ‘B’; char b = ‘张’;
8)布尔类型,使用boolean表示。布尔类型只有两种可能值,分别是true与false。
自然对应自动装箱后就是Boolean, Byte, Character, Short, Integer, Float, Long, Double。
原生数据类型的边界:
package test.variable;
/**
* BasicTypeDemo
*
* @time: 下午9:20:44
* @author mazan
*/
public class BasicTypeDemo {
public static void main(String[] args){
System.out.println("Boolean:没有size属性");
System.out.println("Byte: size:" + Byte.SIZE + ", Max:" + Byte.MAX_VALUE + ", Min:" + Byte.MIN_VALUE);
System.out.println("Character: size:" + Character.SIZE + ", Max:" + Character.MAX_VALUE + ", Min:"
+ Character.MIN_VALUE);
System.out.println("Short: size:" + Short.SIZE + ", Max:" + Short.MAX_VALUE + ", Min:" + Short.MIN_VALUE);
System.out.println("Integer: size:" + Integer.SIZE + ", Max:" + Integer.MAX_VALUE + ", Min:"
+ Integer.MIN_VALUE);
System.out.println("Float: size:" + Float.SIZE + ", Max:" + Float.MAX_VALUE + ", Min:" + Float.MIN_VALUE);
System.out.println("Long: size:" + Long.SIZE + ", Max:" + Long.MAX_VALUE + ", Min:" + Long.MIN_VALUE);
System.out.println("Double: size:" + Double.SIZE + ", Max:" + Double.MAX_VALUE + ", Min:" + Double.MIN_VALUE);
}
}
输出结果:
有几点要注意
- Boolean类型没有size属性,所以说大小是未定的。
- JAVA里面的类型都是带符号的,而且是所有平台都是一样的长度。
- Character类型的最大最小值的定义是
public static final char MIN_VALUE = '\u0000';
public static final char MAX_VALUE = '\uffff';
所以char类型是可以指定中文的,如
char c1 = 'a';
char c2 = '我';
原生类型的特性(优势):
1.存放位置是放在栈里面,不需要用到堆,存储比较快。
2.不可变,包括包装类都是不可变的(全部是final)。
不可变的意思是说内存里面的值一旦被设置后就不会改变,如果要改变就会另外开辟一个位置存放新的值,但旧的值还在。
-------------------------------------------------------------