Day 3
运算中不同类型的数据线转化为同一类型,然后计算。
数字之间可以用下划线分割。
public class demo2 {
public static void main(String[] args) {
int i = 128;
byte b = (byte)i;
System.out.println(i);//内存溢出
//强制转换 (类型)变量名 高——>低
//自动转换 低——>高
System.out.println(b);
System.out.println("==================");
int money=10_0000_0000;//数字之间可以用下划线分割
int years=20;
int total=money*years;//-1474836480
System.out.println(total);
long total2=money*years;//-1474836480 先计算结果为int,再转换。
System.out.println(total2);
long total3=((long)money)*years;//20000000000
System.out.println(total3);
}
}
变量、常量、作用域
变量
数据类型 变量名 = 值
public class demo3 {
//int a=1,b=2,c=3;//不推荐
int a=1;
int b=2;
int c=3;
String name="Leo";
char x='x';
double pi=3.14;
}
常量
final 常量名 = 常量值
常量字母全大写。
public class demo5 {
static final double PI=3.14;//常量一般用大写字母,且格式为 final 常量名=常量值;
public static void main(String[] args) {
System.out.println(PI);
}
}
作用域
变量 作用域
类变量 static
实例变量
局部变量
变量使用的时候必须先声明;声明位置和格式的不同可以区分不同的其为什么变量。
变量命名一般遵循驼峰原则。我是这么直接理解的。常变量全部大写。中间用下划线(_)隔开。
//类变量 static
static double salary=20_0000;
//属性:变量
//实例变量:从属于对象;
String name;
int age;
//布尔值默认false
//main 方法
public static void main(String[] args) {
//局部变量:必须声明和初始化
int i=10;
System.out.println(i);
//变量类型 变量名字=new demo4()
demo4 demo=new demo4();
System.out.println(demo.name);
System.out.println(demo.age);
//类变量
//static
System.out.println(salary);
}
}
//其他方法
//public void add(){
//}
基本运算符
二元运算符
基本的就是 + - * / %(取余) >= <= !=
public class Demo01 {
public static void main(String[] args) {
//二元运算符
int a=10;
int b=20;
int c=30;
int d=40;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
System.out.println(((double) a)/b);
System.out.println(a%b);
}
}
public class Demo02 {
public static void main(String[] args) {
long a=100000000L;
int b=100;
short c=10;
byte d=8;
System.out.println(a+b+c+d);
System.out.println(b+c+d);
System.out.println(c+d);//没有long,类型均为int
}
}
整型数字在运算时,如果没有 long 型,其他结构运算后均会转换为 int 型
public class Demo03 {
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println(a==b);
System.out.println(a!=b);
System.out.println(a>=b);
System.out.println(a<=b);
}
}
一元运算符
++ -- 自增 自减
区分 a++ 和 ++a
a++ 是先赋值,后自增
++a 是先自增,后赋值
幂运算要借助函数 Math.pow(a,b) 表示 a 的 b 次幂
public class Demo04 {
public static void main(String[] args) {
// ++ -- 自增 自减 一元运算符
int a = 1;
int b = a++; //先赋值,后自增
int c = ++a;//先自增,后赋值
System.out.println(a);
System.out.println(b);
System.out.println(c);
//幂运算
double pow = Math.pow(2,3);//8 表示2的3次幂
System.out.println(pow);
}
}
逻辑运算符