java基础语法学习day04---初学者必看详解

Posted A 小码农

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java基础语法学习day04---初学者必看详解相关的知识,希望对你有一定的参考价值。

分支结构

超市收银柜台收款程序V1.0

  • 编写一个超市收银柜台收款程序,根据商品单价、购买数量以及收款金额计算并输出应收金额和找零。
double price = 2.5;
int count = 10;
totalMoney = price * count;
System.out.println("总金额:" + totalMoney);
//键盘输入:Scanner
double money = 100.0;
System.out.println("支付:" + money);
System.out.println("找回:" + (moeny - totalMoney));

完成收银柜台收款程序V2.0

  • 编写一个收银柜台收款程序,根据商品单价、购买数量以及收款金额,计算并输出应收金额和找零;
  • 当总价大于或等于500时,享受8折优惠。
package cn.tedu.day08;

import java.util.Scanner;

public class Tests {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//1、输入商品的单价、数量、收款金额
		System.out.println("请输入商品的单价:");
		double price = sc.nextDouble();//单价
		System.out.println("请输入商品的数量:");
		int count = sc.nextInt();//数量
		System.out.println("请输入付款的金额:");
		double payMoney = sc.nextDouble();//收款金额
		//2、计算商品的价格
		double totalMoney = price * count;
		//3、判断商品的价格是否大于等于500
		//如果条件成立,打8折;
		//否则,不打折
		if (totalMoney >= 500) {
			totalMoney = totalMoney * 0.8;
		}
		//4、计算找零
		//5、输出应收总额和找零
		System.out.println("应收总额:" + totalMoney);
		System.out.println("找零:" + (payMoney - totalMoney));
		sc.close();
	}

}

顺序结构:程序会从上到下依次执行的代码。

分支结构:根据给定的条件,来做出相对应的操作。

循环结构:后面学

什么是分支结构

分支结构:根据给定的条件,来做出相对应的操作。


1、if语句

1.1 if语句的执行逻辑

如果有房,嫁给你;
如果你努力学习,你就会当老板。
如果天气好,我们去约会。

语句0if(判断条件){//必须是能够判断真假的,结果:true、false
	   条件成立,执行语句1}


语句2
if(有房){

​	嫁给你;

}

先执行语句0;

当判断条件成立与否:

​		条件成立,执行语句1;

​		不成立,不执行。

执行语句2

1.2 if语句流程图

1.3 if语句用于处理分支逻辑

1.4 if语句不要省略{}

2、if else 语句

收银柜台收款程序(V3)

  • 编写一个收银柜台收款程序,根据商品单价、购买数量以及收款金额计算并输出应收金额和找零;当总价大于或等于500时,享受8折优惠。
  • 考虑程序异常情况,如:收款金额小于应收金额
    若收款金额大于等于应收金额,则计算找零后输出;
    若收款金额小于应收金额,输出错误提示信息。
如果有房有车,我们就结婚;否则,我们就分手。
if(有房有车){
  	//结婚
}else{
  	//分手
}
IfElseDemo
package cn.tedu.day08;

/**
 * 需求:如果有房有车,我们就结婚;否则,我们就分手。
 * 	有房   boolean isHouse;
 * 	有车   boolean isCar;
 * @author zhangjian
 */
public class IfElseDemo {
	public static void main(String[] args) {
		boolean isHouse = true;
		boolean isCar = true;
		if (isHouse && isCar) {
			System.out.println("我们结婚吧!");
		}else {
			System.out.println("我们分手吧!!!");
		}
	}
}

2.1 if-else语句的执行逻辑

...
 语句0if(判断条件){
     //如果条件成立,执行语句1
 }else{//条件不成立,执行
     //否则,执行语句2;
 }
语句3....

2.2 if-else语句流程图

2.3 if-else语句处理分支逻辑

package cn.tedu.day08;

import java.util.Scanner;

public class Test03 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//1、输入商品的单价、数量、收款金额
		System.out.println("请输入商品的单价:");
		double price = sc.nextDouble();//单价
		System.out.println("请输入商品的数量:");
		int count = sc.nextInt();//数量
		System.out.println("请输入付款的金额:");
		double payMoney = sc.nextDouble();//收款金额
		//2、计算商品的价格
		double totalMoney = price * count;
		//3、判断商品的价格是否大于等于500
		//如果条件成立,打8折;
		//否则,不打折
		if (totalMoney >= 500) {
			totalMoney = totalMoney * 0.8;
		}
		System.out.println("应收总额:" + totalMoney);
		//4、判断:
		if (payMoney >= totalMoney) {
			//5、输出应收总额和找零
			System.out.println("找零:" + (payMoney - totalMoney));
		}else {
			System.out.println("输入有误!!!");
		}
		sc.close();
	}


}

练习:

1、输出两个int数中的最大值。(练习)

package cn.tedu.day08;

import java.util.Scanner;

/**
 * 1、输出两个int数中的最大值。(练习)
 * @author zhangjian
 */
public class Test02 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入第一个数:");
		int num1 = sc.nextInt();
		System.out.println("请输入第二个数:");
		int num2 = sc.nextInt();
		if (num1 > num2) {
			System.out.println("max = " + num1);
		}else {
			System.out.println("max = " + num2);
		}
		sc.close();
	}
}

以上是关于java基础语法学习day04---初学者必看详解的主要内容,如果未能解决你的问题,请参考以下文章

java基础语法学习day04---初学者必看详解

java基础语法学习day02---初学者必看详解

java基础语法学习day01---初学者必看详解

java基础语法学习day01---初学者必看详解

java基础语法学习day03---初学者必看详解

java基础语法学习day07---初学者必看详解