感言:JAVA是一种强类型语言,JAVA的安全性和健状有部分来源与此,JAVA区分大小写。定义数据的时候可以有两种写法。
(先声明变量)<b>double</b> num11;
(不预先定义,直接上,学名叫“<b>动态初始化</b>”)<b>float</b>
num = (<b>float</b>)1.3666222222222222222222222;
也可以这样<b>float</b> num =
1.3666222222222222222222222f;
num11 =
1.36662222222222222222222222222222222222222222
数据类型分基本类型和引用类型,基本类型无需NEW,只要声明就可以创建 int
data =
10,基本类型的运行速度快,是因为基本类型创建的并不是一个引用的“自动”变量,这个变量直接存储“值”,并置于“堆栈”中(我在另一本关于虚拟机的书上看到的却是说存在“寄存器”中,无论是在哪,肯定都比引用类型要高效是肯定的),JAVA中基本类型的存储空间是固定不变的,见表。
引用类型需要用NEW来开创一个空间 new string
= "im new data",NEW将对象存于“堆”中
八大基本类型:
基本类型
最小值
大小
最大值
包装器类型
默认值
boolena
-
-
Boolean
false
Char
Unicode 0
16-bit
Unicode 2(16次)-1
Character
‘\u0000’
Byte
-128
8 bits
+127
(byte)0
Short
-2(15次)
16 bits
+2(125次)-1
(short)0
Int
-2(31次)
32 bits
+2(31次)-1
Integer
Long
-2(63次)
64 bits
+2(63次)-1
0L
Float
Ieee754
0.0f
Double
0.0d
基本类型为什么要有包装类型,因为包装类可以在堆中创建一个非基本对象,用来表示对应的基本类型。如下:
char c = 'x';
Character ch = new Character();
也可以这样
Character ch = new Character('x');
1.5以上的自动拆装箱功能可以直接:Character ch = 's';并可以反向转换 char c = ch;
在实际的使用中,基本类型和包装因型有什么用呢?我一直想不太明白,后来总结了一下,大致归于下:
int
一般做为数值参数就够了
integer
一般做类型转换的时候用的较
基本类型和引用类型的区别还于作用域
{
int = 10;
}
变量的作用域只可用于域结束之前
String s = new String("aaa");
引用S在作用域终点就消失了,然而,S指向的的string对象仍继续占据内存空间。由NEW创建的对象,会一直存在下去,当然了,有垃圾回收器在监视的它,有必要的时候会把它删除。
(字节型,宽度8)Byte,(短整型,宽度16)short,(整型,宽度32)int,(长整型,宽度64)long
细节:
1.
只要整数表达式包含byte,short,int.整个表达式会被提升为int类型
2.
类型决定行为,决定系统怎么去处理它,而不是大小。
(单精度,位宽32)Float(最多显示小数点后7位),(双精度,位宽64)double(最多显示小数点后16位),
他们其实差不多,都可以表示小数但有一定区别
FLOAT的占用空间只有DOUBLE的一半,当值很大或很小时,会变的不精确。
超越函数,如SIN(),COS()等,返回都是DOUBLE
在JAVA中,CHAR是用来存储字符数据的。用Unicode来表示字符。
CHAR和String的区别:
原始数据类型(也称基本数据类型)(primitive data type):byte,short, char, int,
long,float,double,boolean. 一共8种
对象(也称引用类型)(Object):8中除外的都是对象,包括数组。
显然char属于基本数据类型(即原始数据类型),string属于对象
BOOLEAN的值只有真假。它有一个特点,它可以控制条件表达式。也就是说可以写成IF(true)
(不预先定义,直接上,学名叫“<b>动态初始化</b>”)<b>float</b> num =
(<b>float</b>)1.3666222222222222222222222;
5.变量
变量可以预先声明,如:
int a,b;
也可以
int a =1,b=3;
也可以在程序中需要使用的时候进行动态声明,从程序性能上来说,后期动态声明更符合优化的目标。
变量声明可以使用常量,当然也可以使用表达式。如 double a =
Math.sqrt(a*a+b*b);
6.数组
一:数组可以看成是多个相同类型的数据集合
二:数组变量属于引用类型,数组也可以看成是对象,数组中的每一个元素相当于该对象的成员变量
三:
数组中的元素可以是任何数据类型,包括基本类型和引用类型。(除了基本类型以外,其它的全是引用类型)
建立一个数组 new type var[]