1 运算符
1.1 算术运算符
*运算符
对常量和变量进行操作的符号称为运算符
*表达式
用运算符把常量或者变量连接起来符号java语法的式子就可以称为表达式不同运算符连接的式 子体现的是不同类型的表达式
定义两个int类型的变量a,b,做加法(a + b)
*常用运算符
算术运算符
赋值运算符
关系运算符
逻辑运算符
三元运算符
1.1.1 算术运算符的基本用法
1.1.2 算术运算符概述
A:什么是运算符
就是对常量和变量进行操作的符号
B:算数运算符有哪些
* +,-,*,/,%,++,--
1.1.3 算术运算符取余和除法的区别
%:取余运算符。得到的是两个相除数据的余数。
/:除法运算符。得到是两个相除数据的商。
使用场景: %,判断两个数据是否整除。
1.1.4 字符和字符串参与加法操作
字符参与运算
其实是拿该字符对应的数值来操作
‘a’ 97
‘A’ 65
‘0’ 48
字符串参与运算
这里其实做的不是加法运算,而是字符串拼接。
字符串和其他类型的数据做拼接,结果是字符串类型的。
1.1.5 算术运算符++和--的用法
++,--运算符:对变量做加1或者减1的操作。
++或者--既可以放在变量的后面,也可以放在变量的前面。
单独使用的时候,++或者--无论是放在变量的前面还是后面,结果是一样的。
参与操作的时候:
如果++或者--在变量的后面,先拿变量参与操作,后变量做++或者--
如果++或者--在变量的前面,先变量做++或者--,后拿变量参与操作
1.2 赋值运算符
1.2.1 赋值运算符分类
基本的赋值运算符:=
扩展的赋值运算符:+=,-=,*=,/=,%=
+=: a+=20;相当于a = (a的数据类型)(a + 20);
1.3 关系运算符
1.3.1 基本使用及注意事项
关系运算符包含以下内容:
==,!=,>,>=,<,<=
关系运算符的结果都是boolean型,也就是要么是true,要么是false。
注意事项:
关系运算符“==”不能误写成“=”。
1.4 逻辑运算符
1.4.1 逻辑运算符概述
A:逻辑运算符有哪些
&,|,^,!
&&,||
B:案例演示
逻辑运算符的基本用法
C:注意事项:
a:逻辑运算符一般用于连接boolean类型的表达式或者值。
b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
算术表达式:a + b
比较表达式:a == b(条件表达式)
D:结论:
&逻辑与:有false则false。
|逻辑或:有true则true。
^逻辑异或:相同为false,不同为true。
!逻辑非:非false则true,非true则false。
1.4.2 逻辑运算符&&和&的区别
A:&&和&的区别?
a:最终结果一样。
b:&&具有短路效果。左边是false,右边不执行。
&是无论左边是false还是true,右边都会执行
B:||和|的区别?
a:最终结果一样
b:||具有短路效果.左边是true,右边不执行
|是无论左边是false还是true,右边都会执行
1.5 三元运算符
1.5.1 三元运算符概述
A:格式
(关系表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
B:示例:
获取两个数中大数。
int x=3,y=4,z;
z = (x>y)?x:y;//z变量存储的就是两个数的大数
1.5.2 代码案例
/**
* 三元运算符
* 格式:
* (关系表达式)?表达式1:表达式2;
* 执行流程:
* A:计算关系表达式的值,看是ture还是false
* B:如果是true,表达式1就是运算结果
* 如果是false,表达式2就是运算结果
*/
public class Dmeo01 {
//main主方法
public static void main(String[] args) {
//定义变量a、b
int a = 10;
int b = 20;
//三元运算符 用c接收结果
int c = (a > b) ? a : b;
System.out.println("c:" + c);
}
}
/**
* 三元运算符的练习
* 比较两个整数是否相同
* 输出ture或者false
*/
public class Demo02 {
public static void main(String[] args) {
// 定义两个int类型的变量
int a = 10;
int b = 20;
boolean flag = (a == b) ? true : false;
// boolean flag = (a == b);
System.out.println(flag);
}
}
/**
* 获取三个整数中的最大值
*/
public class Demo03 {
public static void main(String[] args) {
// 定义三个int类型的变量
int a = 10;
int b = 30;
int c = 20;
// 先比较两个整数的大值
int temp = ((a > b) ? a : b);
int max = ((temp > c) ? temp : c);
System.out.println("max:" + max);
}
}
2 键盘录入
2.1 键盘录入的基本步骤
2.1.1 键盘录入数据概述
我们目前在写程序的时候,数据值都是固定的,但是实际开发中,数据值肯定是变化的,所以,把数据改进为键盘录入,提高程序的灵活性。
键盘录入数据的步骤:
A:导包(位置放到class定义的上面)
import java.util.Scanner;
B:创建对象
Scanner sc = new Scanner(System.in);
C:接收数据
int x = sc.nextInt();
2.1.2 代码案例
/**
* 为了提高程序的灵活性,我们就把数据改进为键盘录入。
* 如何实现键盘录入呢?目前我们只能使用JDK提供的类Scanner。
* 这个使用的步骤,目前大家记住就可以了。
*
* 使用步骤:
* A:导包
* import java.util.Scanner;
* 类中的顺序:package > import > class
* B:创建对象
* Scanner sc = new Scanner(System.in);
* C:接收数据
* int i = sc.nextInt();
*/
//导包
import java.util.Scanner;
public class Demo01 {
//主方法
public static void main(String[] args) {
//创建键盘录入数据的对象
Scanner sc = new Scanner(System.in);
//接收数据
System.out.println("请录入一个整数:");
int i = sc.nextInt();
//输出数据
System.out.println("i:" + i);
}
}
2.2 键盘录入练习
2.2.1 键盘录入两个数据并求和
键盘录入两个数据,并对这两个数据求和,输出其结果
键盘录入:
A:导包
B:创建对象
C:接收数据
2.2.2 代码案例
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
// 创建对象
Scanner sc = new Scanner(System.in);
// 接收数据
System.out.println("请输入第一个数据:");
int a = sc.nextInt();
System.out.println("请输入第二个数据:");
int b = sc.nextInt();
// 对数据进行求和
int sum = a + b;
System.out.println("sum:" + sum);
}
}