可以变化的量,必须先定义后使用。
变量是Java中最基本的存储单元。
type varName = value;
变量类型 变量名(合法标识符) = 值;多个变量可用逗号隔开 int a = 1, b = 2, c = 3;不推荐使用,问就是不好看,可读性差;
变量类型(复习):byte char type int long folat double boolean
? 引用数据类型:类 数组 接口
变量命名规则:
类变量 关键字 static int salary = 2500;类里面,跟随类的消失
实例变量 类里面 没有初始话的话为默认值,数值为零 布尔为false 其余为null
局部变量 方法里
初始化(initialize)后不能改变,一般使用大写字母,需使用关键字final。别问小写,问就是,不好看
final 变量类型 变量名 = 值;
final double PI = 3.14;
static final double MAX = 3;
final static double MAX = 3;//修饰符不存在先后问题
算数运算符 + - * / %(取余,取模) ++ --
赋值 =
关系运算符 > < >= <= == !=
逻辑运算符 && || ~
位运算符 & ^ | ~ << >>
int a = 5;
int b = a++;
int c = ++a;
System.out.println(a);//7 a++ 自增运算,在值后面先复制再加 自减同理
System.out.println(b);//5
System.out.println(c);//7 ++a 自增运算,在值前面先加在赋值
double d = 123;
long l = 123L;
float f = 123f;
int i = 123;
short s = 12;
byte b = 2;
System.out.println(d+f+i+s+b);
System.out.println(l+f+i+s+b);
System.out.println(l+d+f+i+s+b);
System.out.println(i+s+b);
System.out.println(s+b);
System.out.println("===============================");
//运算中有float,double,long类型 ,有long就是最后结果long类型,float,double 为doublef。float为float 其余为int
int aa= 10;
int n = 20;
System.out.println(aa+n);//30
System.out.println(""+aa+n);//1020 先后顺序 先转换为字符串在+的话就是字符串的拼接
System.out.println(aa+n+"");//30 先运算在拼接
逻辑运算符:
与( &&) 或(||) 非(~)
&& 就是两个为真就是真,存在短路与现象 a && b ,如果a是假的,那么b不会运算,相反a是真的,才会运算b
int c = 5;
boolean b = (c>4) || (c++<4);
System.out.println(b);//True
System.out.println(c);//5
int c1 = 5;
boolean b1 = (c1 < 4) && (c1++>4);
System.out.println(b1);//Flase
System.out.println(c1);//5
int c1 = 5;
boolean b1 = (c1 > 4) && (c1++ < 6);
System.out.println(b1);//true 运算符优先级?
System.out.println(c1);//6
byte(1),short(2),char(2)->int(4)->float(4)->double(8)
类型等级,低————>高
不同类型数值之间做运算需要先转换为同一类型,然后在运算。
//强制类型转换
int i = 128;
byte b = (byte) i;// byte -128~127 128 内存溢出
System.out.println(b);//-128
//自动类型转换
char a = ‘a‘;
int c = a + 1;
System.out.println(a); //a
System.out.println((int)a);//97
System.out.println(c);//98
注意:
double d = 123.12;
int i1 = (int) d;
System.out.println(d);//123.12
System.out.println(i1);//123
int money = 1000000000;//int money = 10_0000_0000;int money1 = 12_1234_1234;大数字可以使用这种方式
System.out.println(money);//1000000000
int year = 10;
int total = year * money;
System.out.println(total);// 1410065408??
int money = 1000000000;
System.out.println(money);
int year = 10;
long total = year * money;//long类型的total year * money已经溢出
System.out.println(total);// 1410065408??
int money = 1000000000;
System.out.println(money);
int year = 10;
long total = year * (long)money;//long类型的total
System.out.println(total);// 100_0000_0000
原文:https://www.cnblogs.com/tangxiyue/p/15032834.html