目录
6.运算符
算术运算符中 + - * / % 属于二元运算符(指需要两个操作数才能完成的运算)
7.运算规则
(1)操作数有一个long型,则结果为long型
(2)没有long时结果为int,即使全为byte,short
(3)如果有一个操作数为double,则结果为double
(4)只有当两个数都是float,结果才是float
8.转义字符
\b 退格
\n 换行
\t 制表符
\r 回车
\" 双引号
\' 单引号
\\ 反斜杠
9.取模运算
余数符号和左边操作数相同
7%3=1;
-7%3=-1;
7%-3=1;
10.字符型转为数字
char b='a';
System.out.println(b); //输出结果:a
System.out.println((int)b); //输出结果:97
System.out.println(0+b); //输出结果:97
11.逻辑运算符
^(异或) 同为false,不同为true
12.位运算符
<< 左移运算符 * *
>> 右移运算符 / /
int c=3<<2; //相当于c=3*2*2
System.out.println(c); //输出结果:12
System.out.println(12>>2); //相当于12/2/2 输出结果:3
13.字符串连接符
String a="3";
int b=4;
System.out.println(a+b); //输出:34
如果是:
char c='a';
System.out.println(c+b); //结果与字符串不同
14.条件运算符
x?y :z
表示如果x=true,则执行y
否则执行z
int score=80;
String type=score<60?"不及格":"及格";
System.out.println(type); //输出:及格
15.强制类型转换
double x=3.14;
int nx=(int)x; //nx=3
char p='a';
int p1=p+1; //p1=98
16.常见数值溢出问题
int money=10000000000;
int years=20;
int total=money*years; //数值溢出
long total1=money*years; //数值仍然溢出 ,long转换不起作用
正确写法:
long total2=(long)money*(long)years;
或者:
long total2=money*(long)years;
另外:
long total3=33333L*3333333*3333; //加L是为了防止溢出,相当于转换为long型进行运算
17.Scanner获得输入
在c++语言中用cin来进行输入操作
在java中则需要用scanner获得输入
import java.util.Scanner;
public class TestScanner {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入名字:");
String name = scanner.nextLine();
System.out.println("请输入你的年龄:");
int age = scanner.nextInt();
System.out.println(name);
System.out.println(age);
}
}