标识符
标识符的命名规则
只能用26个英文大小写字母,0-9的数字,_和$来命名
不遵守规则编译无法通过
数字不能开头
不能有空格
不能用关键字命名
标识符的命名规范
变量名和方法名:单个单词命名时,字母小写。多个单词连接的变量名,除第一个单词为小写,其他的单词首字母大写
xxxYyyZzz
类名和接口名:单个单词或多个单词连接时,每个单词的首字母大写
XxxYyyZzz
包名:全部为小写
xxxyyyzzz
常量名:
XXX_YYY_ZZZ
变量类型
基本数据类型
整型:byte(1字节=8bit) 、short(2字节) 、int(4字节)、long(8字节)
字符型:char(2字节)
浮点型:float(2字节) 、double(4字节)
float存储数据范围比long大
布尔型:boolean
引用数据类型
类<–String
接口
数组
数据类型提升规则
byte、short、char->int->long->flloat->double
运算符
自增运算符
运算符++ 先写先运算再赋值,后写先赋值再运算。
运算符- -
/*
练习:随意给出一个整数,打印显示它的个位数,十位数,百位数的值。格式如下:
数字xxx的情况如下:
个位数:
十位数:
百位数:
例如:
数字153的情况如下:
个位数:3
十位数:5
百位数:1
*/
public static void main(String[] args) {
/*
//第一种
int number = 120;
int hundredsDigit = number / 100;
int tenDigits = (number - (hundredsDigit) * 100) / 10;
int digits = number - hundredsDigit * 100 - tenDigits * 10;
System.out.println("百位数" + hundredsDigit);
System.out.println("十位数" + tenDigits);
System.out.println("个位数" + digits);
*/
//第二种
int number = 120;
int hundredsDigit = number / 100;
int tenDigits = number % 100 / 10;
int digits = number % 10;
System.out.println("百位数" + hundredsDigit);
System.out.println("十位数" + tenDigits);
System.out.println("个位数" + digits);
}
赋值运算符
short s1 = 10;
s1 = s1 + 2;//编译失败,2为常量 int型
s1 += 2;//不会改变变量本身的数据类型,编译成功
int n = 10;
n += (n++) + (++n);//n = n + (n++) + (++n)
System.out.println(n); //32
比较运算符
1.比较运算符的结果是boolean类型
2.区分 == 和 = 的区别
3.& 和 && 区别
A & B
A、B 都为 true 才能通过
无论 A 为false 还是true 都会判断去 B
A && B
A、B 都为 true 才能通过
如果 A 为false 则不会判断 B ,直接不通过
只有 A 为true才会去判断 B
例子:
public static void main(String[] args) {
int number1 = 10;
int number2 = 10;
boolean a = false;
if (a & number1++ > 0) {
System.out.println("成功!");
} else {
System.out.println("失败!");
}
System.out.println("number1: " + number1);
if (a && number2++ > 0) {
System.out.println("成功!");
} else {
System.out.println("失败!");
}
System.out.println("number2: " + number2);
}
输出:
失败!
number1: 11
失败!
number2: 10
public static void main(String[] args) {
int number1 = 10;
int number2 = 10;
boolean a = true;
if (a | number1++ > 0) {
System.out.println("成功!");
} else {
System.out.println("失败!");
}
System.out.println("number1: " + number1);
if (a || number2++ > 0) {
System.out.println("成功!");
} else {
System.out.println("失败!");
}
System.out.println("number2: " + number2);
}
输入:
成功!
number1: 11
成功!
number2: 10
Scanner
除String外,其他都是.next变量类型()
String为.next()