前言
提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、运算符介绍
1. 运算符介绍
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
- 算术运算符
- 赋值运算符
- 关系运算符 [比较运算符]
- 逻辑运算符
- 位运算符 [需要二进制基础]
- 三元运算符
二、算术运算符
1.介绍
算术运算符是对数值类型的变量进行运算的,在 Java 程序中使用的非常多。
2. 算术运算符一览
3. 案例演示
public class ArithmeticOperator {
public static void main(String[] args) {
System.out.println(10 / 4);
System.out.println(10.0 / 4);
double d = 10 / 4;
System.out.println(d);
System.out.println(10 % 3);
System.out.println(-10 % 3);
System.out.println(10 % -3);
System.out.println(-10 % -3);
int i = 10;
i++;
++i;
System.out.println("i=" + i);
int j = 8;
int k = j++;
System.out.println("k=" + k + "j=" + j);
}
}
4. 细节说明
- 对于除号"八",它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。例如:int x= 10/3 ,结果是3
- 当对一个数取模时,可以等价a%b=a-a/b*b,这样我们可以看到取模的一个本质运算。
- 当自增当做一个独立语言使用时,不管是++i;还是i++;都是一样的,等价
- 当自增当做一个表达式使用时j= ++i等价[?]
- 当自增当做一个表达式使用时j=i++等价[?]
三、关系运算符(比较运算符)
1. 介绍
- 关系运算符的结果都是 boolean 型,也就是要么是 true,要么是 false
- 关系表达式 经常用在 if 结构的条件中或循环结构的条件中
2. 关系运算符一览
3. 案例演示关系运算符的使用
public class RelationalOperator {
public static void main(String[] args) {
int a = 9;
int b = 8;
System.out.println(a > b);
System.out.println(a >= b);
System.out.println(a <= b);
System.out.println(a < b);
System.out.println(a == b);
System.out.println(a != b);
boolean flag = a > b;
System.out.println("flag=" + flag);
}
}
4. 细节说明
- 关系运算符的结果都是 boolean 型,也就是要么是 true,要么是 false。
- 关系运算符组成的表达式,我们称为关系表达式。 a > b
- 比较运算符"==“不能误写成”="
四、逻辑运算符
1. 介绍
用于连接多个条件(多个关系表达式),最终的结果也是一个 boolean 值。
2. 逻辑运算符一览
分为两组学习
- 短路与 && , 短路或 ||,取反 !
- 逻辑与 &,逻辑或 |,^ 逻辑异或
说明逻辑运算规则: - a&b : & 叫逻辑与:规则:当 a 和 b 同时为 true ,则结果为 true, 否则为 false
- a&&b : && 叫短路与:规则:当 a 和 b 同时为 true ,则结果为 true,否则为 false
- a|b : | 叫逻辑或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false
- a||b : || 叫短路或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false
- !a : 叫取反,或者非运算。当 a 为 true, 则结果为 false, 当 a 为 false 是,结果为 true
- a^b: 叫逻辑异或,当 a 和 b 不同时,则结果为 true, 否则为 false
3. && 和 & 基本规则
名称 语法 特点 短路与&& 条件 1&&条件 2 两个条件都为 true,结果为 true,否则 false 逻辑与& 条件 1&条件 2 两个条件都为 true,结果为 true,否则 false
4. && 和 & 案例演示
public class LogicOperator01 {
public static void main(String[] args) {
int age = 50;
if(age > 20 && age < 90) {
System.out.println("ok100");
}
if(age > 20 & age < 90) {
System.out.println("ok200");
}
int a = 4;
int b = 9;
if(a < 1 & ++b < 50) {
System.out.println("ok300");
}
System.out.println("a=" + a + " b=" + b);
}
}
5. && 和 & 使用区别
- &&短路与:如果第一个条件为 false,则第二个条件不会判断,最终结果为 false,效率高
- & 逻辑与:不管第一个条件是否为 false,第二个条件都要判断,效率低
- 开发中, 我们使用的基本是使用短路与&&, 效率高
6. || 和 | 基本规则
名称 语法 特点 短路或|| 条件 1||条件 2 两个条件中只要有一个成立,结果为 true,否则为 false |逻辑或 条件 1|条件 2 只要有一个条件成立,结果为 true,否则为 false
7. || 和 | 案例演示
public class LogicOperator02 {
public static void main(String[] args) {
int age = 50;
if(age > 20 || age < 30) {
System.out.println("ok100");
}
if(age > 20 | age < 30) {
System.out.println("ok200");
}
int a = 4;
int b = 9;
if( a > 1 || ++b > 4) {
System.out.println("ok300");
}
System.out.println("a=" + a + " b=" + b);
}
}
8. || 和 | 使用区别
- ||短路或:如果第一个条件为 true,则第二个条件不会判断,最终结果为 true,效率高
- | 逻辑或:不管第一个条件是否为 true,第二个条件都要判断,效率低
- 开发中,我们基本使用 ||
9. ! 取反 基本规则
名称 语法 特点 ! 非(取反) !条件 如果条件本身成立,结果为 false,否则为 true
10. ! 案例演示
public class InverseOperator {
public static void main(String[] args) {
System.out.println(60 > 20);
System.out.println(!(60 > 20));
boolean b = (10 > 1) ^ ( 3 > 5);
System.out.println("b=" + b);
}
}
11. ^ 案例演示
a^b: 叫逻辑异或,当 a 和 b 不同时,则结果为 true, 否则为 false ^逻辑异或,System.out.println( (4 < 1) ^ (6 > 3) ); // ?
五、 赋值运算符
1. 介绍
赋值运算符就是将某个运算后的值,赋给指定的变量。
2. 赋值运算符的分类
? 基本赋值运算符 = int a = 10; ? 复合赋值运算符 += ,-= ,*= , /= ,%= 等 , 重点讲解一个 += ,其它的使用是一个道理 a += b; [等价 a = a + b; ] a -= b; [等价 a = a - b; ]
3. 案例演示
- 赋值基本案例 [int num1 = 10]
- += 的使用案例
4. 赋值运算符特点
- 运算顺序从右往左 int num = a + b + c;
- 赋值运算符的左边 只能是变量,右边 可以是变量、表达式、常量值
int num = 20; int num2= 78 * 34 - 10; int num3 = a; - 复合赋值运算符等价于下面的效果
比如:a+=3;等价于 a=a+3; 其他类推 - 复合赋值运算符会进行类型转换。
byte b = 2; b+=3; b++
public class AssignOperator {
public static void main(String[] args) {
int n1 = 10;
n1 += 4;
System.out.println(n1);
n1 /= 3;
System.out.println(n1);
byte b = 3;
b += 2;
b++;
}
}
六、三元运算符
1. 基本语法
条件表达式 ? 表达式 1: 表达式 2;
2. 运算规则
- 如果条件表达式为 true,运算后的结果是表达式 1;
- 如果条件表达式为 false,运算后的结果是表达式 2
3. 案例演示
public class TernaryOperator {
public static void main(String[] args) {
int a = 10;
int b = 99;
int result = a > b ? a++ : b--;
System.out.println("result=" + result);
System.out.println("a=" + a);
System.out.println("b=" + b);
}
}
4. 使用细节
- 表达式 1 和表达式 2 要为可以赋给接收变量的类型(或可以自动转换)
- 三元运算符可以转成 if–else 语句
public class TernaryOperatorDetail {
public static void main(String[] args) {
int a = 3;
int b = 8;
int c = a > b ? (int)1.1 : (int)3.4;
double d = a > b ? a : b + 3;
}
}
七、运算符优先级
- 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如右表,上一行运算符总优先于下一行。
- 只有单目运算符、赋值运算符是从右向左运算的。
- 一览表, 不要背,使用多了,就熟悉了.
八、标识符的命名规则和规范
1. 标识符概念
- Java对各种变量、方法和类等命名时使用的字符序列称为标识符
- 凡是自己可以起名字的地方都叫标识符int num1 = 90;
2. 标识符的命名规则(必须遵守)
- 由26个英文字母大小写,0-9,或$组成
- 数字不可以开头。int 3ab = 1;//错误
- 不可以使用关键字和保留字,但能包含关键字和保留字。
- Java中严格区分大小写,长度无限制。int totalNum= 10; int n = 90;
- 标识符不能包含空格。int a b = 90;
3. 标识符命名规范[更加专业]
- 包名:多单词组成时所有字母都小写:aaa.bbb.ccc //比如 com.hsp.crm
- 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz [大驼峰] 比如: TankShotGame
- 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz [小驼峰, 简称 驼峰法] 比如: tankShotGame
- 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ 比如 :定义一个所得税率 TAX_RATE
- 后面我们学习到 类,包,接口,等时,我们的命名规范要这样遵守,更加详细的看文档.
九、关键字
关键字的定义和特点 (不用背) 定义:被 Java 语言赋予了特殊含义,用做专门用途的字符串(单词) 特点:关键字中所有字母都为小写
十、保留字
1. 介绍
Java 保留字:现有 Java 版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留 字 byValue、cast、future、 generic、 inner、 operator、 outer、 rest、 var 、 goto 、const
十一、键盘输入语句
1. 介绍
在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取。Input.java , 需要一个 扫描器(对象), 就是 Scanner
2. 步骤 :
- 导入该类的所在包, java.util.*
- 创建该类对象(声明变量)
- 调用里面的功能
3. 案例演示要求:可以从控制台接收用户信息,【姓名,年龄,薪水】
import java.util.Scanner;
public class Input {
public static void main(String[] args) {
Scanner myScanner = new Scanner(System.in);
System.out.println("请输入名字");
System.out.println("请输入年龄");
int age = myScanner.nextInt();
System.out.println("请输入薪水");
double sal = myScanner.nextDouble();
System.out.println("人的信息如下:");
System.out.println("名字=" + name
+ " 年龄=" + age + " 薪水=" + sal);
}
}
|