基础知识
标识符
不能是关键字,所有的标识符需要以字母、美元符或下划线开头,后接字母、数字、美元符或下划线。
Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
关键字
abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else、enum、extends、final、finally、float、for、goto、if、implements、import、instanceof、int、interface、long、native、new、package、private、protected、public、return、strictfp、short、static、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while.
(加粗的为较为常用的)
数据类型
1、强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
此类型安全性高但速度慢。
2、弱类型语言
变量没有要求严格符合规定。
Java的数据类型
Java是一种强类型语言,分为基本类型和引用类型。
基本数据类型(primitve type)
-
boolean类型: 占1位,只有true或false。
-
整数类型:byte:占1个字节
short:占2个字节
int:占4个字节
long:占8个字节
-
浮点型:double:占4个字节
float:占8个字节
//整数 int num1 = 10; byte num2 = 20; short num3 = 20; long num4 = 30L; //long类型要在数字后面加个L //小数 float num5 = 50.1F; //float类型要在数字后面加个F double num6 = 3.1415; //字符 char name = '国'; //布尔值:是非 boolean flag = true; boolean flags = false;
引用数据类型(reference type)
- 类
- 接口
- 数组
类型转换
运算中,不同类型的数据先转化为同一类型,然后进行运算。
低 -----------------------------------------------------> 高
byte,short,char–>int–>long–>float–>double
强制转换 (由高到低):(类型)变量名
int i=10;
byte b=(byte) i;
自动类型转换(由低到高):正常赋值
int i = 10;
double b = i;
注:
- 不能对布尔值进行转换
- 不能把对象类型转换为不相干的类型
- 在把高容量转换到低容量的时候,强制转换
- 转换的时候可能出现内存溢出或者精度问题
运算符
优先级()
1.算术运算符:+,-,*,/,%,++,–(a++先取值后加一,++a先加一后取值)
2.赋值运算符:=
3.关系运算符:>,<,>=,<=,==(等于),!=instanceof(不等于)
4.逻辑运算符:&&,||,!
5.位运算符:&,|,^,~,>>,<<,>>>
6.条件运算符:?
7.扩展赋值运算符:+=,-=,*=,/=
字符串连接符 +, String
int a = 10;
int b = 20;
System.out.println("" + a + b);
System.out.println(a + b + "");
" " + a + b先转换为String,再拼接
a + b + " "先运算
三元运算符
x ? y : z
如果x==true,则结果为y,否则结果为z
int score = 90;
String type = score < 60 ? "不及格" : "及格";
System.out.println(type);
x ? y : z*
如果x==true,则结果为y,否则结果为z
int score = 90;
String type = score < 60 ? "不及格" : "及格";
System.out.println(type);