目录
运算符
- 特符符号,表示数据运算、赋值等。包括算术运算符、赋值运算符、关系(比较)运算符、逻辑运算符、位运算符、三元运算符。
算数运算符(Airthmetical Operator)
+ | 加法(正号) |
- | 减法(负号) |
* | 乘 |
/ | 除 |
% | 取模(取余),符号看被除数的符号 |
++ | 前自增:++a,先运算,后取值 |
++ | 后自增:a++, 先取值,后运算 |
-- | 前自减:--a,先运算,后取值 |
-- | 后自减:a--,先取值,后运算 |
+ | 字符串连接 |
关系运算符(Relational Operator)
- 结果都是 boolean 类型
- 经常在 if 条件或循环结构条件中使用
- 满足条件为返回 true ,不满足返回 false
== | 等于 |
!= | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
instanceof | 检查是否为类对象 |
逻辑运算符
- 满足条件为返回 true ,不满足返回 false
&(&&) | 逻辑与(短路与,效率高,后面条件有可能不执行),同时为true时,结果为true |
| (||) | 逻辑或(短路或,效率高,后面条件有可能不执行),同时为false时,结果为false |
! | 取反,非运算,结果取反 |
^ | 逻辑异或,两者不同时为true |
赋值运算符(AssignOperator =)
- 将运算的结果,赋值给变量
- 与C++相同
- 复合赋值运算符会进行类型的强制转换
三元运算符(TernaryOperator)
条件表达式?表达式1:表达式2;
例如:a > b ? a++ : b--;
- 条件表达式为真,则返回表达式1,否则返回表达式2。
- 表达式要为右值(或者可以自动转换)
- 本质是 if--else 语句
运算符的优先级(同C++)
- 只有单目运算符、赋值运算符从右往左运算
标识符的命名规则和规范
规则
- 由26个英文字母大小写、0-9、_、$组成
- 数字不开头
- 不能使用关键字和保留字,但是可以包含
- Java 严格区分大小写,无限长度
- 标识符不含空格
规范
- 包名:多单词组成时,全部小写
- 类名:多单词时,所有单词首字母大写【大驼峰】
- 变量名、方法名:第一个单词小写,后面单词首字母大写【小驼峰】
- 常量:所有字母大写,多单词时每个单词用下划线连接
键盘输入语句
在编程时,需要接收用户输入的数据,可以使用键盘输入语句来获取。
Input.java 需要一个扫描器(对象),Scanner
- 导入该类所在包, java.util.*
- (new)创建 Scanner 对象
- 接受用户的输入,并赋值给变量
import java.util.Scanner;
public class TF {
public static void main(String[] args){
//接收用户的输入
Scanner myScanner = new Scanner(System.in);
System.out.println("您好,请输入名字");
String name = myScanner.next();
System.out.println(name+"\n");
}
}
进制
- 二进制 0-1 以 0b 或者 0B 开头,满二进一
- 十进制 0-9 ,满十进一
- 八进制 0-7, 满八进一
- 十六进制 0-9、a-f 以 0x 或者 0X开头,满十六进一
- 其他进制转十进制:按权乘各位数,后相加求和
- 十进制转其他进制:除后取余,直到商为0.将每步的余数倒过来
- 二进制转八进制: 从低位开始,每三位转换成对应的八进制数
- 八进制转二进制: 把每一位转换成对应的三位二进制数
- 二进制转十六进制:从低位开始,每四位转成对应的十六进制数
- 十六进制转二进制:把每一位转换成对应的四位二进制数
位运算
原码、反码、补码
- 正数三码合一
- 负数的反码:符号位不变,其他位取反。负数的补码-1
- 负数的补码:反码+1
- 0的反码补码都是0
- java没有无符号数
- 计算机以补码方式来运算
- 当我们看运算结果时,要看原码
位运算符
按位与& | 两位为1,结果为1 |
按位或| | 两位有一个为1,结果为1 |
按位异或^ | 一个为1一个为0,结果为1 |
按位取反~ | 1为0,0为1 |
计算机计算步骤:
- 找原码
- 找补码
- 运算
- 转原码,得到结果
>> | 算术右移,低位溢出,符号位不变,并且用符号位补溢出的高位, 等于对2取整几次 |
<< | 算术左移,符号位不变,地位补0。等于乘以几次2 |
>>> | 逻辑右移,无符号右移。低位溢出,高位补0 |