一、重点知识
1.1方法重载时参数列表顺序不一样也可
1.2char 0-65535
算术运算符中注意 / %的区别,,,/是取商,%是取余
1.3注意三元运算符后面的两个表达式之间用 :链接
1.4注意i++先运算再自增
举例
int i = 5;
System.out.println("i++") 结果为5
可见输出时候也遵循此规律
注意运算时候也是如此,先完成对应运算再自增,自增后的i与运算再无关系,赋值也算运算奥,别忘了,也是先赋值再自加
1.5关系运算符的结果为布尔型
1.6遇到报错,非法字符后面加unicode码而且数字较大,说明你可能有中文字符
1.7逻辑运算符也不一定要用在选择语句中,Boolean a = b && c && d; 也是对的
1.8运算符的优先级为:算术运算符,连接运算符,关系运算符,逻辑运算符。
1.9一元运算符意思是操作数就一个
2.0[10,99]随机数 公式:(int)(Math.random() * (99 - 10 + 1) + 10)
2.1只要前面有一个字符串,后面的加号都只起到连接作用 没遇到之前正常计算
2.2scanner会导致程序阻塞,只有完成输入操作后,程序才能继续执行
2.3next().charAt(0) 获取单个字符
二、重点问题
i++ 与 ++i
int a = 2;
System.out.println(a++); 结果任然为2
System.out.println(++a); 结果为3
也就意味着输出操作中,i也是先输出再自增一
三、本节内容
3.1、运算符
算术运算符:+,-,*,/,%,++,--
/:两个数相除,取商
%:两个数相除,取余数
++:给变量自增1
i++:都是给i加1。i++的值还是当i来算。
i++:先计算,再加1
++i:也是给i加1。++i的值相当于加1之后
++i:先加1,再运算
--:给变量自减1
都是给i进行减1。
i--,值相当于i本身。最终执行之后给i减1。
先计算,再减1
--i,值相当于i-1了。
先减1,再计算。
赋值运算符:=,+=,-=,*=,/=,%=
=:将=右侧的数据,赋值给=左侧的变量
+=:求和后再赋值:a += b;相当于a = a + b
关系运算符:也叫比较运算符,比较两个数值的关系的。计算结果是boolean类型
<,>,<=,>=,==,!=
==,比较两个数值,是否相等,如果相等,就是true,否则就是false。
!=,比较两个数值,是否不等,如果不等,就是true,否则就是false。
逻辑运算符:操作数是boolean类型,计算结果也是boolean类型。
&&:"与操作",表示并且的意思。
运算规则:在参加计算的操作数中,如果都为true,结果就为true。有一个为false,结果就为false。
总结:一假则假,全真才真。
||:"或操作",表示或者的意思。
运算规则:在参加计算的操作数中,如果都为false,结果才为false,有一个为true,结果就为true。
总结:一真则真,全假才假。
!:"取非、取反",一元的运算符。
运算规则:原来是true,取反后就是false,如果原来是false,取反后就是true
三元运算符:根据条件获取一个结果。
语法:X ? Y:Z
X是一个boolean类型的表达式,如果值为true,整个三元运算符取Y的值,否则取Z的值
3.2、表达式
表达式:操作数和运算符组成一个式子。
表达式的值和类型:将表达式进行计算得到的结果就是表达式的值。
3.3自动类型提升
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
byte 、char 、short --> int --> long --> float --> double
特别的:当byte、char、short三种类型的变量做运算时,结果为int型
说明:此时的容量大小指的是,表示数的范围的大和小。比如:float容量要大于long的容量
3.4强制类型转换
(只涉及7种基本数据类型):自动类型提升运算的逆运算。
1.需要使用强转符:()
2.注意点:强制类型转换,可能导致精度损失。
3.5 String与8种基本数据类型间的运算
1. String属于引用数据类型,翻译为:字符串
2. 声明String类型变量时,使用一对""
3. String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+
4. 运算的结果仍然是String类型
3.6、控制台输入
读取控制台上输入的数据。
//step1:导入Scanenr这个扫描器
import java.util.Scanner;
//step2:创建Scanner扫描器
Scannersc=newScanner(System.in);
//step3:使用sc调用对应的方法,来读取键盘的输入
intnum1=sc.nextInt();//读取一个int类型的数据
doublenum2=sc.nextDouble();//读取一个double类型的数据
Stringstr=sc.next();//读取一个String类型的数据
charc=sc.next().charAt(0);//读取一个char类型的字符串
网友评论