1、运算符
算数运算符
+ - * / %
++ --
赋值运算符
+= : 拿运算符左边的变量和右边的式子的值进行运算,最后将运算后的结果赋值给左边的变量举例
int a = 1;
a += 1+1;
a= 3;
+= 隐含了一个强制类型转换
面试题
byte b = 1;
b = b +1;
b+=1 不会报错,因为隐含了强制类型转换,b = (byte)(b+1);
比较运算符
> < >= <= == !=
逻辑运算符
&& 短路与:如果左边的表达式结果为false,右边不在执行
|| 短路或:如果左边的表达式结果为true,右边不在执行
| 无论左边为什么,右边都执行
& 无论左边为什么,右边都执行
^ 一个数异或同一个数两次,结果还是这个数 a^b^b = a;注意面试题:互换两个数
三元运算符 三目运算符 条件表达式
表达式1 ? 表达式2 : 表达式3;
2、基本类型转换
隐士转换
小类型数据自动提升为大类型数据
byte,short,char ->int ->long->folat->double
显示转换
要转换的数据类型 变量名= (要转换的数据类型)值;
double强转int,小数全部干掉
3、Scanner类的使用
第一步导包
import java.util.Scanner;
第二部创建变量
Scanner scanner = new Scanner(System.in);//System.in是标准输入流,scanner是变量名,可以任意起
第三部调用方法
建议:每次调用nextXXX()方法之前给scanner对象重新赋值
int num = scanner.nextInt();
String str = scanner.next();
4、Math类,String
String str = " 兰州拉面啦啦啦啦 ";//字符串对象
int len = str.length();//获取字符串长度
String subString = str.substring(1,2);//包左不包右,对str没有影响
String newStr = str.trim();//去掉字符串两端的空格,对str没有影响
long num = Math.round(3.3);//3
Math.ceil(double d):返回大于等于该数的最小整数
Math.floor(double d)返回小于等于该数的最大整数 -1.1
|
|