java中的数据类型:
变量
Java作为一种强类型语言,其中的每一个变量在编译前,都必须声明类型!
分为两种:
在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。说白了,基本数据类型变量里存储的是直接放在抽屉里的东西,而引用数据类型变量里存储的是这个抽屉的钥匙,钥匙和抽屉一一对应。
需要注意的是java中float类型与double类型,和C语言有所不同。
默认是double类型。如果一定要使用float类型,在数字后加F后缀。
整数默认int类型,使用long类型时,数字后加个L后缀。
并且char占两个byte,C语言中char占一个byte。
数据类型可以转化:
自动类型转换(隐式)
1.特点:代码不需要进行特殊处理,自动完成
2.规则:数据范围从小到大
int --> long, float --> double;
long --> float/double
float 变量名 = 变量值L;
double 变量名 = (double)变量值;
强制类型转换(显式)
1.代码需要进行特殊的格式处理,不能自动完成。
2.格式:
范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据
PS:
强制类型转换不推荐使用,有可能发生数据溢出、精度损失。
byte/short/char都可以发生数学运算,eg:“+”
char zifu = 'A';
System.out.println(zifu); //输出 A
System.out.println(zifu + 1);
//把 A 当作65进行处理,再 + 1,即输出 66
byte/char/short这三种类型在运算时,首先被提升为int类型,然后再计算。
byte num1 = 40;
byte num2 = 50;
short num3 = 60;
byte result = num1 + num2; //Error!!!
//byte + byte --> int + int --> int
故:
int result = num1 + num2; //输出 90
或者:
//short + byte --> int + int --> int -->short
//强制类型转换为short,前提是本身范围没有超过short才行
short result2 = (short)num1 + num 3; //输出 100
boolean类型不能发生数据类型转换!!
变量种类
1.实例变量
2.类变量
3.局部变量
4.参数
加号的用法
连接作用
1、任何数据类型与字符串进行连接时,结果都会变成字符串
String + in --> String
String str = "Java";
System.out.println(str + 20); //输出 Java20
//优先级
System.out.printfln(str + 20 +30); //输出 Java2030
加法
char/short/int类型相加
char/short/int --> int 再进行运算
自增++、自减--
单独使用时:num++ 等同于 ++num
int num1 = 10;
++num1;
System.out.println(num1); // 输出 11
num1++;
System.out.println(num1); // 输出 12
混合使用时:区别极大
A:如果前++,那么变量立刻马上 + 1,然后拿着结果进行使用,先+后用
B:如果后++,先使用变量本来的数值,然后再让变量 + 1,先用后+
int num2 = 20;
System.out.println(num2++); // 20
System.out.println(num2); // 21
int num3 = 50;
int result1 = num3--;
System.out.println(result1); // 50
System.out.println(num3); // 49
常量
常量被赋值后,不允许被改变!
通常使用final对常量进行定义。
final DataType 常量名 = 常量值;
Tips:常量的命名规范与普通变量有所不同,要将每个字母大写并用下划线字符分隔每个单词。
final int TOTAL_NUM = 200;
System.out.println(TOTAL_NUM); //200
TOTAL_NUM = 20; //重新赋值,将报错!!
System.out.println(TOTAL_NUM);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。