Java基础之Java中的基本数据类型
学习java
一段时间了,使用java
也差不多一年多了,可是对于后续的java
的学习真的是后劲不足,或者是说懒惰吧,回想一下这一年多,用java
最多的就是Android
开发,说内心话,在使用java
的时候,好多基础的东西却没有认真去总结。学而不思则惘,思而不学则殆。
有必要总结下java的基础知识了。
1、 java中基本数据类型。
java
中,基本数据类型主要有四类八种。
- 布尔型
boolean
1 / 8 个字节,因为它只需要两个值,0 或者 1。 文本型
char
2个字节,值得注意的是在C
语言中,char
是占1字节的,因此表达中文时需要使用两个字符,char c = '中'
,这样会出现乱码的。在C
语言中,char
可以当成byte
用,而java
里面却不行。整数型
byte
1个字节short
2个字节int
4个字节long
8个字节- 浮点型
float
4个字节double
8个字节
注意事项:
- 在声明整形数字的时候,例如9999999999(大于9个9的时候),需要在数字后面加上
l
或者L
,否则编译器会报错,因为java
语言默认整形数字是int
类型的,而int
类型的变量最大能表示出9个9
,(但是最大值可以表示2147483647
即10
位数),因此在定义long
变量的时候,如果后面的字面量没有超过int
的最大值的时候,是没有问题的,编译器自动向上转型为long
型,但是超出int
的最大值的时候就必须在字面量的后面加上l
或者L
了。
1 | long val = 999999999;(9个9,编译器通过,因为后面字面量未超出int型的最大值) |
- 在声明小数型数字的时候,例如
2.5
,如果是float
型的,要在数字后面加上f
或者F
,否则编译器会报错,因为java
语言默认小数型数字
是double
型的
例如:1
2float val = 2.5f;(或者2.5F)
double val = 2.5;
以下是代码实例:
1 | public class Test { |
输出:
1 | char型2字节 |
boolean | 1 / 8字节 |
---|---|
byte | 1字节 |
short | 2字节 |
int | 4字节 |
long | 8字节 |
float | 4字节 |
double | 8字节 |
1、java中的引用数据类型
java中的引用类型的变量是存放在栈内存中的,而new
出来的实际对象却是放在堆内存的。
例如: int[] a = new a[]{1,2,3,4};
其中变量a
是存放在栈内存中的,后面new
出来的 a[]{1,2,3,4}
这个对象是存放在堆内存中的。
除此之外,涉及到JVM
的垃圾回收,java
中的引用还有具体的分类:java
中按照对对象引用的强弱关系分类依次为:
- 强引用
StrongReference
- 软引用
SoftReference
- 弱引用
WeakReference
- 虚引用
PhantomReference
具体关于java
引用的内容我将进一步学习,并更新到我的博客。