变量
引入
7月20日,张三在都市快捷酒店开房,房间号520,房间类型是大床房
此时如果说520的住户,指的就是张三
7月21日,张三退房,富贵入住520
此时如果说520的住户,指的就是富贵
概念
记录一个可以被改变的值
使用
1,声明
语法:数据类型 变量名;
注意:
1,同一个作用域下变量名不能重复
2,只能在方法中声明,main函数(main方法)
特殊情况(了解):
一次可以声明多个数据类型相同的变量
语法: 数据类型
变量名1,变量名2,变量名3,...;
2,赋值
语法:变量名 = 值;
特殊情况:声明并赋值
语法:数据类型 变量名 = 值;
注意:
一个变量可以多次赋值
3,使用
直接使用变量名
注意: 初始化:变量的第一次赋值,称为变量的初始化
作用域:变量声明时,所在的大括号中可以使用
转义字符
概念:特殊的字符
例子:打印输出内容如下
老子说:"孔子说的对"
System.out.println("老子说:\"孔子说的对\"")
常用的转义字符:
\" 表示内容的双引号
\' 表示内容的单引号
\\ 表示内容的反斜杠
\n 换行
\t 制表
运算符
算法运算符
+,-,*,/,%(取余)
++:自增
++在前
如:
int num = 0;
System.out.println(++num);
System.out.println(++num);
System.out.println(++num);
总结:先自增,在参与运算
步骤(了解):
1,自增
2,参与运算 从运行效率的角度考虑++在前的运行速度高一些
++在后
如:
int num = 0;
System.out.println(num++);
总结:先参与运算,在自增
步骤(了解):
1,存值
2,使用自己+1
3,使用存值进行运算
--:递减
--在前:
如:
int num = 0;
System.out.println(--num);
System.out.println(--num);
System.out.println(--num);
总结:先递减,在参与运算
--在后:
如:
int num = 0;
System.out.println(num++);
总结:先参与运算,在递减
逻辑运算符
<:小于
<=:小于等于
>:大于
>=:大于等于
==:判断是否相等
==可以判断基本数据类型值是否相同
==可以判断引用数据类型地址是否相同(了解)
!=:判断是否不相同
&&:短路与 同真为真
||:短路或 有真为真
!:非 非真为假,非假为真
注意:使用逻辑运算符连接的算式称为条件表达式
赋值运算符
=:将等号右边的值赋值给左边的变量
int a = 10;
int b = a;
//a = 10,b = 10
a = 2
//a = 2,b=10
+=:加等
int a = 10;
int b = 1;
//b = b + a;
b += a;
//a = 10,b=11
-=:减等
int a = 10;
int b = 1;
//b = b - a;
b -= a;
//a = 10,b=-9
*=
/=
%=
三目运算符
别名:三元运算符
语法格式: 条件表达式?值1:值2;
注意:当条件表达式值为true时,取值1,否则取值2
例子:
获取三个值中的最大值
要求:使用三目运算符完成
步骤
1,定义三个变量记录值
int a = 10;
int b = 1;
int c = 12;
2,先获取a与b之间的最大值
int max = a > b?a:b;
3,使用步骤2的最大值与c进行比较,获取其最大值
int overMax = max > c?max:c;
注意:步骤2与步骤3合并
int overMax = (a > b?a:b) > c ? (a > b?a:b) : c;
字符串连接符
+
在运算中出现字符串(String),此时+表示字符串连接符
注意: 所有数据类型与字符串使用字符串连接符,结果都为字符串
"123" + 1+ 2+ 3 = "123123"
1+2+3+"123" = "6123";
位运算(扩展)
<<
4 << 2
100
10000 = 16
>>
4 >> 2
100
1 = 1
&(同真为真)
4 & 1
100
001
000 = 0
|(有真为真)
4 | 1
100
001
101 = 5
^(相同为假,不同为真)
4^2
100
010
110 = 6
进制(扩展)
十进制
00 01 02 03 04 05 06 07 08 09 10
总结:逢10进1,但是没有10
二进制
0 1 10 11 100 101 110 111 1000 1001 1010
八进制
0 1 2 3 4 5 6 7 10 11 12
十六进制
0 1 2 3 4 5 6 7 8 9 a b
键盘录入(提高代码趣味)
对应的类:Scanner
使用步骤:
1,导包
代码:import java.util.Scanner;
书写位置: 类上
2,创建Scanner对象
代码:Scanner 变量名 = new Scanner(System.in);
书写位置: 使用之前
3,等待用户输入
等待用户输入字符串:
String 变量名2 = 步骤2的变量名.next();
等待用户输入整形数字
int 变量名3 = 步骤2的变量名.nextInt();
书写位置: 代码逻辑需要用户输入的使用
例子: 让用户输入姓名与年龄,在打印到控制台
步骤: 1,定义两个变量分别记录姓名与年龄
2,倒入Scanner所在的包
3,创建Scanner对象
4,提示用户输入姓名
5,等待用户输入姓名
6,提示用户输入年龄
7,等待用户输入姓名
8,打印用户输入的年龄与姓名
比较字符串内容是否相同
语法:
字符串的变量名或字符串.equals(要比较的字符串或字符串变量名)
例子:
String str01 = "常威打来福";
String str02 = "来福被大四了";
boolean b = str01.equals(str02);