/*关键字,保留字 标识符
* 只能用下划线 英文字母 $开头
* 不能有空格
* 不能有关键字和保留字
* 变量
* 数据类型 基本数据类型(byte short int long float double char boolean)
*/
int num1 = 100;
float num2 = 9.0f;
char c1 = '6';
System.out.println(c1+1);
boolean b1 = 1000 > 999;
System.out.println(b1);
/*
* 1.进制(二进制 八进制 十六进制)
* 2.字符的另一种表示方式unicode
* 3.转义符 \
*/
int num = 010;
// 010是八进制的8
System.out.println(num);
int num1 = 0x1F;
// 0x1F是十六进制的31
System.out.println(num1);
char c1 = '\'';
System.out.println(c1);
同一块内 不能声明同名变量
// 变量作用域:百年俩个的有效范围 从声明它的位置开始 到他所在的快结束
// int num1 = 10;
// boolean num2 = true;
// System.out.println(num1);
/*
赋值运算符:=、+=、﹣=、*=、/=、%=
算术运算符: +、﹣、*、/、%、++、 --
比较运算符:>、<、>=、 <=、= =、!=、instanceof
逻辑运算符:!、&&、||
位运算符: &、|、^ 、 ~、>>、<<、>>>
条件运算符: ?:
条件运算符很独特,因为它是用三个操作数组成的三元运算符。
*/
int num = 10;
System.out.println(num);
num = 100;
System.out.println(num);
num += 10 ;// 与num = num+10等效
System.out.println(num);
num -= 10 ;// 与num = num-10等效
System.out.println(num);
num *= 10 ;// 与num = num*10等效
System.out.println(num);
num /= 10; // 与num = num/10等效(取整)
System.out.println(num);
num %= 10; // 与num = num%10等效(余数)
System.out.println(num);
//如果加号两侧是数值表达式 做的是加法
//如果加号有一侧是字符串 加号就是连接符号
System.out.println(5+6);
System.out.println("hello"+6);
int num3 = 102;
int num4 = 1;
// 显示num3+num4=结果
System.out.println("num3+num4="+(num3+num4));
System.out.println(num3+"+"+num4+"="+(num3+num4));
// /:整型和整形相除 结果还是整型(取整 不是四舍五入)
System.out.println(11/3);//3
System.out.println(11.0/3);//3.66666666666666665
System.out.println(11/3.0);//3.66666666666666665
//% 取余数(模运算) 结果的正负只与被除数有关
System.out.println(5%2);//1
System.out.println(-5%2);//-1
System.out.println(5%-2);//1
System.out.println(-5%-2);//-1
// ++自增,--自减
// int i = 1;
// i++; // i = i+1;i+=1;
// System.out.println(i);
int i = 1;
int j = 0;
j = i++;//++在后 先运算 再自增 打印也是先打印再自增
System.out.println(i);//2
System.out.println(j);//1
int num1 = 20;
int num2 = 30;
System.out.println((num1++)+num2);//50
System.out.println(num1+","+num2);//21,30
int num1 = 20;
int num2 = 30;
System.out.println((num1++)+num2+","+((++num1)+(++num2)));//50,53
System.out.println(num1+","+num2);//22,31
int i=1;
// 比较运算符
int age = 22;
if (age >18) {
System.out.println("成年人");
}
if(age == 18) {
System.out.println("正好成年人");
}
if(age < 18) {
System.out.println("未成年人");
}
}
i=i++;
System.out.println(i);
//特殊情况
/*
* 当运行一个java应用程序时,在电脑上会先运行一个JVM
* 然后.java源文件编译成的.class文件会在这个JVM上运行
* JVM内存按照功能分为五大区域
*
* 栈(stack) 存放程序运行时需要的局部变量
* 方法区
* 堆(heap)
*/
// 逻辑运算符 ! && || 非 与 或
int age = 22;
double height = 1.99;
// if(age > 18 && height> 1.8) { //与
// System.out.println("666");
if(age > 18 || height> 1.8) { //或
System.out.println("666");
}
// !只能对boolean值取反,true取反false,false取反true
boolean b = height > 1.8;
if(!b) {
System.out.println(111);
}
}
// 按位&和按位| 跟 逻辑&&和逻辑|| 都能进行逻辑判断
// 按位&和按位|能够参与位运算(位运算针对的是二进制整数)
//&,|和&&,||有什么异同
// 1.都能参与逻辑运算
// 2.前两个可以参加位运算 后两个不能
// 3.&&和||有短路性 &和|没有
// 条件运算符(三元运算符) ?
int num = 145 >999 ?145 : 999;
// 当表达式1?表达式2:表达式3
// 当表达式1是true时 返回表达式2 否则返回表达式3
int year = 1600;
System.out.println(year%400 == 0 || (year%4 == 0&& year%100 != 0 )? "ping" : "run");
}
int x = 5;
int y = 7;
// 互换x和y的值
// int temp;
// temp = x;
// x = y;
// y = temp;
// System.out.println(x+","+y);
System.out.println(4%5) //4 如果是小的在前面 就是取前面的数