一、注释
单行注释、多行注释、文档注释
//这是单行注释
/*
这是属于多行注释
这是属于多行注释
这是属于多行注释
*/
/**
测试xxxx
@author Mrs_haze
*/
二、标识符规则
标识符里只允许存在数字、字母、美元符、下划线,且数字不能作为开头。
汉字可以作为标识符但不建议这样写。
关键字不能作为标识符
表示类名每个单词首字母大写
表示方法和变量的标识符第一个单词小写,第二个单词首字母大写
int a123 = 1;
int $ac = 1;
int _bd = 1;
int 汉字 = 1;
int 123a = 1; //错误
int class = 1; //错误
三、变量的本质及分类
1、变量的声明
double salary;
long earthPopilation;
int age;
一个字节等于8个比特,1byte = 8 bit
2、变量的使用
public class Welcome {
public static void main(String[] args) {
int i = 1;
float a;
System.out.println(i);
System.out.println(a); // 错误,a没有进行初始化
}
}
四、常量
final 一经初始化后不能更改其值
命名用大写字母和下划线
public class Test {
public static void main(String[] args) {
final int NUM = 1;
NUM = 2; //这里不能更改值,会报错
}
}
五、基本数据类型的介绍
对应类型的数值不能超过其表述范围,否则报错
1、整型常量
public class Welcome {
public static void main(String[] args) {
int i = 015; //八进制输入
int g = 0x15; //十六进制输入
int f = 0b1010; //二进制输入,是0b不是ob
//输出的结果都为十进制的
byte a = 300; //报错,虽然属于int但是超过了byte限制范围
long b = 55555555; //编译成功,在int表示的范围内(21亿内)。
long c = 55555555555; //不加L编译错误,已经超过int表示的范围。
long d = 55555555555L; // 通过末尾加L(或l)把int型改为long所属范围
//abdc本质上都为int
}
}
2、 浮点型变量/常量
public class Welcome{
public static void main(String[] args) {
float a = 1.33456E2F; //科学计数法 E
float f = 0.2F;
double a = 1.111111111111;
}
}
//不要用浮点数直接进行比较
public class Welcome {
public static void main(String[] args) {
float a = 0.2e3F;
float f = 20E-2F;
System.out.println(f==a);//结果为false
double e = 999999999999999999999999999.9999999D;
System.out.println(e);// 打印结果四舍五入:1.0E27
}
}
科学 计数法用E来表示
float类型赋值时需要添加后缀F/f,因为float只有4个字节,
浮点类型float,double的数据比较、计算存在四舍五入,不够精确
//解决浮点数比较不精确的BigDecimal模块
import java.math.BigDecimal;
public class Welcome{
public static void main(String[] args) {
BigDecimal bd = BigDecimal.valueOf(1.0);
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
System.out.println(bd);//0.5
System.out.println(1.0 - 0.1 - 0.1 - 0.1 - 0.1 - 0.1);//0.5000000000000001
}
}
报错:Exception in thread "main" java.lang.Error: Unresolved compilation problem:
因为没有导入java文件所在的包 package pro1;
3、字符型变量/常量
public class Welcome{
public static void main(String[] args) {
char a = 'T';
char b = '当'; //char只能存一个字符
char c = '\u0061'; //十六进制表示
String y = "dfg"; //S要大写,字符序列用双引号引起来
System.out.println(""+'a'+'b'); // 前面有双引号才能将a和b并在一起
System.out.println(""+'a'+'\''+'b'); // \ 取消转义
System.out.println(""+'a'+'\n'+'b');
System.out.println(""+'a'+'\t'+'b');
System.out.println(c);
}
}
4、boolean类型变量/常量
boolean flag;
flag = true;
if(flag)
System.out.println(flag);
一般判断写法 if(flag) 或 if(!flag)
不推荐写 if(flag == true)
六、补充
快捷键补全方法
1、Alt + / 实现代码补全
2、打印为 sysout 按 Alt + /补全