【Java入门】Day02-运算符&数据输入&流程控制语句

#今日内容

  • 运算符
  • 数据输入
  • 流程控制语句

#运算符

1.算术运算符
2.赋值运算符
3.关系运算符
4.逻辑运算符
5.三元运算符(三目运算符)

##01.算术运算符(理解)

  • 1 分类:
  • 2 算术运算符取余和除法的区别
  • 3 字符的"+"操作
  • 4 字符串的"+"操作
总结:
	1.分类:
		+ - * / %(取模) ++ --

	   * 除法运算注意事项
		* 两个整数相除得到的结果是整数
		* 如果想要得到浮点数,其中一个数据必须是浮点类型的数据

		10 + 20


	2.算术运算符取余和除法的区别
		* 除法: 两个整数相除得到的结果是商
		* 取余: 两个整数相除得到的结果是余数

	


	3.字符的"+"操作	
		* 字符是如何进行参与运算?	
		   字符在参与运算的是,拿着底层的ASCII码表中的数值是多少,来进行计算
		   'a'  -->  97
		   'A'  -->  65
		   '0'  -->  48

		   'b' + 100; -- > 98 + 100 --> 198
		
	4.字符串的"+"操作
		* 只要是跟字符串进行做 + 的操作 结果永远都是字符串
		int a = 10;
		int b = 20;

		int sum = a + b;
		System.out.println(sum); // 

##02.赋值运算符(应用)

  • 1 赋值运算符有哪些?
  • 2 扩展运算符?
总结:
	1.赋值运算符分类:
		= (不叫等号 ,是赋值符号)
	2.扩展运算符: 
	   += -= *= /= %=

	 运算的规则:
	 	将两边的数值进行运算,将结果赋值给左边的变量
	 	扩展运算符具有强制类型转换的作用

	 	int a = 10;
	 	// a = a + 100;
	 	// 将上面的操作可以转换为下面的写法:
	 	a += 100;

	 	 += 左边必须要的是一个变量

##03.自增自减运算符(理解)
总结:
* 单独使用(重点掌握) 循环
++ – 不管在前还是在后,结果都是一样的
int a = 10;
a ++;
++a;
* 参与操作使用
* ++ – 在前的时候,先自增或自减,然后在参与运算
* ++ – 在后的时候,先参与运算,然后在自增或自减

		int a = 10;
		int b = a++ +10;
		int d = ++a+10;

##04.关系运算符(比较运算符)

  • 1 关系运算符有哪些?
  • 2 关系运算符的得到的结果是什么数据类型?
  • 3 =和==的区别?
总结:
	1.关系运算符分类:
		> >= < <= == !=
	2.关系运算符的得到的结果是什么数据类型?
	  boolean
		
	3.=和==的区别?
		* = : 赋值运算符  将右边的值赋值给左边的变量 int a = 10;
		*== : 
			* 如果比较的是基本数据类型,比较的是具体的数值是否相等
				10 == 20
			* 如果比较的是引用数据类型,比较的是地址值是否相等(了解)

##05.逻辑运算符(重点)

  • 1 逻辑运算符有哪些(了解)
总结
	1.逻辑运算符分类
		& | ^ !

	2.逻辑运算符的运算规则
		& : 有false则为false
		| : 有true则为true
		^ : 相同则为false  不同则为true
		! : 非false 则为true 非true则为false

##06.短路逻辑运算符(应用)
总结:
1.短路逻辑运算符分类
&& ||

	2.短路逻辑运算符的特点		
		&&:
		  && 与 & 结果是相同的,只不过是&& 具有短路的效果
		  当左边为false的时候,右边就不会在执行了	
		||:
		   || 与 | 结果是相同的,只不过是|| 具有短路的效果
		  当左边为true的时候,右边就不会在执行了

##07.三元运算符(三目运算符)

  • 1 格式:
  • 2 执行流程:
总结:
	1. 格式:  
		数据类型 变量名 = 关系表达式 ? 表达式1 : 表达式2;
	2. 执行流程:
	    * 计算关系表达式的值,是true还是false
		* 如果是true 表达式1作为结果
		* 如果是false 表达式2作为结果

#数据输入

##08. Scanner概述及使用步骤

  • Scanner类的作用是什么?
  • 引用数据类型的一般使用步骤?
总结:

	1. Scanner 类的作用是什么?
		使数据更为灵活
		
	2.引用数据类型的一般使用步骤?
		* 导包
			import java.util.Scanner;
			
		* 创建Scanner对象
			Scanner sc = new Scanner(System.in);

			数据类型 变量名 = 值;
			
		* 接收数据
			int num = sc.nextInt();

流程控制语句(应用)

##09.流程控制语句分类
总结:
* 顺序结构
* 选择结构
if switch
* 循环结构
for while do…while

##10.顺序结构
总结:
顺序结构执行流程?
从上往下依次执行

##11.单if语句
总结:
* 格式:
if (关系表达式) {
语句体;
}
* 执行流程:
* 判断关系表达式的值是true还是false
* 如果是true就执行语句体
* 如果是false什么都不执行了
继续往下执行后面的代码

	* 注意事项:
		单if语句只能是判断一种情况,判断不了两种情况

public class IfDemo01{
	public static void main(String[] args){
		System.out.println("今天天气比较凉快,出去散步,突然发现一个快乐的地方:足疗店");
		// 定义变量 假设我自己的钱
		int money = 600;
		if(money >= 998){
			System.out.println("进去开始嗨....");
		}
		System.out.println("回家自嗨..");
	}
}

##12.if…else
总结:
* 格式:
if (关系表达式) {
语句体1;
}else{
语句体2;
}
* 执行流程:
* 判断关系表达式的值是true还是false
* 如果是true就执行语句体1
* 如果是false就执行语句体2

	* 注意事项:
		if...else 只能判断两种情况,如果有多种情况是判断不了的

	public class IfDemo02{
		public static void main(String[] args){
			System.out.println("今天天气比较凉快,出去散步,突然发现一个快乐的地方:足疗店");
			// 定义变量 假设我自己的钱
			int money = 6000;
			if(money >= 998){
				System.out.println("进去开始嗨....");
			}else{
				System.out.println("亲,足疗SPA了解一下....");
			}
			System.out.println("回家自嗨..");
		}
	}

##13.奇偶数
需求:任意给出一个整数,请用程序实现判断该整数是奇数还是偶数,
并在控制台输出该整数是奇数还是偶数。
思路:
①为了体现任意给出一个整数,采用键盘录入一个数据
②判断整数是偶数还是奇数要分两种情况进行判断,使用if…else结构
③判断是否偶数需要使用取余运算符实现该功能 number % 2 == 0
④根据判定情况,在控制台输出对应的内容

	public class IfDemo03{
		public static void main(String[] args){
			
			Scanner sc = new Scanner(System.in);
			System.out.println("请输入一个整数:");
			int num = sc.nextInt();
			if(num % 2 == 0){
				System.out.println(num+"是偶数");
			}else{
				System.out.println(num+"是奇数");
			}
			
		}
	}

##14.if…else…if 结构
总结:
* 格式:
if (关系表达式1) {
语句体1;
}else if (关系表达式2) {
语句体2;
}

else{
语句体n+1;
}

	* 执行流程:
		* 首先执行关系表达式1
		* 如果为true 执行语句体1,如果为false就判断关系表达式2
		* 如果为true 执行语句体2,如果为false就判断下一个关系表达式
		  ....
		  如果以上条件都不满足,就会执行else中的语句体n+1

		  public static void main(String[] args) {
		  	  int week = 1;
		  	  if (week == 1) {
		  	  	System.out.println("星期一");
		  	  }else if (week == 2) {
		  	  	System.out.println("星期二");
		  	  }
		  	  ....
		  	  else if(week == 7) {
		  	  	System.out.println("星期日");
		  	  }else {
		  	  	System.out.println("输入的数据有误!");
		  	  }
		  }

##15.案例
* 需求:小明快要期末考试了,小明爸爸对他说,会根据他不同的考试成绩送他不同的礼物,
假如你可以控制小明的得分,请用程序实现小明到底该获得什么样的礼物,并在控制台输出。
* 分析:
奖励:
95~100 山地自行车一辆
90~94 游乐场玩一次
80~89 变形金刚玩具一个
80以下 胖揍一顿
分析:
* 小明的考试成绩未知,可以使用键盘录入的方式获取值
* 由于奖励种类较多,属于多种判断,采用if…else…if格式实现
* 为每种判断设置对应的条件
* 为每种判断设置对应的奖励

	public class IfTest02 {
		public static void main(String[] args) {
			//小明的考试成绩未知,可以使用键盘录入的方式获取值
			Scanner sc = new Scanner(System.in);
			
			System.out.println("请输入一个分数:");
			int score = sc.nextInt();
			
			//由于奖励种类较多,属于多种判断,采用if...else...if格式实现
			//为每种判断设置对应的条件
			//为每种判断设置对应的奖励
			/*
			if(score>=95 && score<=100) {
				System.out.println("山地自行车一辆");
			} else if(score>=90 && score<=94) {
				System.out.println("游乐场玩一次");
			} else if(score>=80 && score<=89) {
				System.out.println("变形金刚玩具一个");
			} else {
				System.out.println("胖揍一顿");
			}
			
			
			// 数据测试:正确数据,边界数据,错误数据
			// 我们给出的正确的范围是在 [0,100]
			// 小于最小的 大于最大的,都是非法值  
			
			if(score>100 || score<0) {
				System.out.println("你输入的分数有误");
			} else if(score>=95 && score<=100) {
				System.out.println("山地自行车一辆");
			} else if(score>=90 && score<=94) {
				System.out.println("游乐场玩一次");
			} else if(score>=80 && score<=89) {
				System.out.println("变形金刚玩具一个");
			} else {
				System.out.println("胖揍一顿");
			}
			*/
			
			
			if(score>=95 && score<=100) {
				System.out.println("山地自行车一辆");
			} else if(score>=90 && score<=94) {
				System.out.println("游乐场玩一次");
			} else if(score>=80 && score<=89) {
				System.out.println("变形金刚玩具一个");
			} else if(score>=0 && score<=79) {
				System.out.println("胖揍一顿");
			}else{
				System.out.println("你输入的分数有误");
			}
		}
	}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值