Java语法
标识符:
字母、数字、_(下划线),$组成,
不能以数字开头,不能是关键字,驼峰式
最小信息单元“位(bit)”
最小存储单元“字节(Byte)”
1B(字节) = 8bit
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1PB = 1024TB
基本类型(4类8种)
四类 八种 字节 数据表示范围
整型 byte 1 -128~127
short 2 -3E4~3E4
int 4 -2E9~2E9 默认
long 8 -9E18~9E18
浮点型 float 4 -3.4E-38~3.4E-38
double 8 -1.7E-308~1.7E-308 默认
字符型 char 2 表示一个字符,如('A','0','家')用单引号
布尔型 boolean 1 只有两个值true与false
定义变量
int a; 可以先定义变量
a = 20; 但不赋值不能输出
double b = 3.14; double a=3.14; ×变量不可以重复定义
char c = 'z'; 字符 用单引号
String s = "i love java"; 字符串 用双引号
long d = 987654321L; 整数默认为int 赋值给long会报错 需要后面加L
float e = 3.14F; 小数默认为double 赋值给float会报错 需要后面加F
字节由小到大:byte -> short -> int -> long -> float -> double
类型转换
小类型转大类型 double d = 1000; // 自动转 整数默认int类型
大类型转小类型 int i = (int)6.718; // i的值为6 小数默认double类型
运算符
+ - * / % a+=2 a-=2 a*=2 a/=2 a%=2
加 减 乘 除 取余 a=a+2 a=a-2 a=a*2 a=a/2 a=a%2
先转化同类型再运算 同类型运算 结果类型不变
5/2 → 2 5.0/2 → 2.5
负数取余结果为负数
b=a++ 先赋值 后加一 b=a a=a+1 a++=a a=a+1
b=++a 先加一 后赋值 a=a+1 b=2 a=a+1 ++a=a
比较运算符:== != > < >= <= 返回true/false
逻辑运算符:
& && | || ^ !
与 短路与 或 短路或 异或 非
x==y&y=x++ 左边走完 右边也走
x==y&& y=x++ 当左边为false 时 (结果肯定是false)右边 不走
优先级 | 描述 | 运算符 |
1 | 括号 | ()、[] |
2 | 正负号 | +、- |
3 | 自增自减,非 | ++、--、! |
4 | 乘除,取余 | *、/、% |
5 | 加减 | +、- |
6 | 移位运算 | <<、>>、>>> |
7 | 大小关系 | >、>=、<、<= |
8 | 相等关系 | ==、!= |
9 | 按位与 | & |
10 | 按位异或 | ^ |
11 | 按位或 | | |
12 | 逻辑与 | && |
13 | 逻辑或 | || |
14 | 条件运算 | ?: |
15 | 赋值运算 | =、+=、-=、*=、/=、%= |
16 | 位赋值运算 | &=、|=、<<=、>>=、>>>= |
三目(? :) 表达式?成立执行:不成立执行 可以嵌套