3.1.运算符介绍
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等
1.算数运算
2.赋值运算
3.关系运算符【比较运算符】
4.逻辑运算符
5.位运算符【需要二进制基础】
6.三元运算符
3.2.算数运算符
算数运算符是对数值类型的变量进行运算的,在java程序中使用非常多
细节:
1.对于除号“/”,它的整数和小数之间是有区别的,整数之间做除法时,只保留整数,舍弃小数。
System.out.println(10 / 4); //从数学来看是 2.5, java 中 2
System.out.println(10.0 / 4); //java 是 2.5
double d = 10 / 4;//java 中 10 / 4 = 2, 2=>2.0
System.out.println(d);// 是 2.0
2.当对一个数取模时,取模的公式是a%b = a-a/b*b,可以直接套入公式,当a是一个小数时公式=a-(int)a/b*b
// % 取模 ,取余
// 在 % 的本质 看一个公式!!!! a % b = a - a / b * b
System.out.println(10 % 3); //1
System.out.println(-10 % 3); // -1 // -10 % 3 => -10 - (-10) / 3 * 3 = -10 + 9 = -1
System.out.println(10 % -3); //1 // 10 % -3 = 10 - 10 / (-3) * (-3) = 10 - 9 = 1
System.out.println(-10 % -3);//-1 // -10 % -3 = (-10) - (-10) / (-3) * (-3) = -10 + 9 = -1
3.当自增作为独立语言使用时,不管是++i还是i++都是一样的
//++的使用
//int i = 10;
i++;//自增 等价于 i = i + 1; => i = 11
++i;//自增 等价于 i = i + 1; => i = 12
System.out.println("i=" + i);//12
4.当自增作为一个表达式使用时++j就会先自增再赋值,j++先赋值再自增
作为表达式使用
前++:++i 先自增后赋值
后++:i++先赋值后自增
int j = 8;
//int k = ++j; //等价 j=j+1;k=j;
int k = j++; // 等价 k =j;j=j+1;
System.out.println("k=" + k + "j=" + j);//8 9
3.3关系运算符(比较运算符)
关系运算符的结果都是boolean型,也就是要么true要么false
关系表达经常用在if结构的条件中或循环结构的条件中
3.4逻辑运算符
用于连接多个条件(多个关系表达式),最终结果也是boolean值
分两组学习:
1.短路与&&,短路或||,取反!
2.逻辑与&,逻辑或|,^逻辑异或
1.&&和&基本规则 ![](https://img-blog.csdnimg.cn/44437e1dc561463985346b234b5823af.png)
2.||和|的基本规则
3.!和^的基本规则
3.4赋值运算符
赋值运算符就是将某个运算后的值,赋值给指定变量
基本赋值运算符: =
复合赋值运算符:+=,-=,*=,/=,%= 重点讲+=,其他一个道理
a+=b[等价a=a+b]
3.5三元运算符
条件表达式?表达式1:表达式2
1.如果条件表达式为true,运算后的结果是表达式1
2.如果条件表达式为false,运算后的结果是表达式2
int a = 10;
int b = 20;
//解读
//1.a>b为false
//2.返回b--,先返回b的值,然后再b-1
//3.返回的结果是20
int resule = a>b?a++:b--;
细节:
1.表达式1和表达式2要为可以赋给接收变量的类型(或可以自动转换)
int a = 3;
int b = 4;
int c = a<b?2.1:6.2//这样不可以
int c = a<b?(int)2.1:(int)6.2//可以
3.6运算符优先级
3.7标识符规则和规范
标识符概念:
java中对各种变量、方法和类等命名时使用的字符序列称为标识符
凡是自己起名字的地方都叫标识符
标识符规则:
1.有26个英文字母,0-9,_或$组成
2.数字不可以开头,int 3ab = 5;//错
3.不可以使用关键字和保留字,但能包含关键字和保留字
4.java中严格区分大小写,长度没有限制
5.标识符不能包含空格 int a b = 4;//错
标识符规范:
1.包名:多单词组成时所有字母都小写:aaa.bbb.ccc
2.类名、接口名:多单词组成时,首字母大写:XxxYxx 例:TankShotGame
3.变量名、方法名:多单词组成时,第一个字母小写,后面的每个单词的首字母大写:xxxYxxZxx 例:tankShotGame
4.常量名:所有字母都大写,多个单词组成时,用下划线连接:XXX_YYY_AAA
3.8关键字和保留字
3.9键盘输入语句
介绍:
在编程中,需要接受用户的数据,就可以使用键盘输入语句来获取,input.java,需要一个扫描器(对象),就是Scanner
步骤:
1.导入该类的所在包,java.Util.*
2.创建该类对象(声明变量)
3.调用里面的功能
import java.util.Scanner;// 导入Java.util下的Scanner类
public class Input {
public static void main(String[] args) {
//1.创建Scanner对象
Scanner myScanner = new Scanner(System.in);
//2.提示用户输入信息
System.out.println("请输入姓名");
//3.调用Scanner中的next方法接收用户输入的数据
String name = myScanner.next();
//输入年龄
System.out.println("请输入年龄");
int age = myScanner.nextInt();
//输入薪资
System.out.println("请输入薪资");
double sal = myScanner.nextDouble();
System.out.println("个人信息如下");
System.out.println("姓名="+name+" 年龄="+age+" 薪资="+sal);
}
}