传智播客Java实现键盘数据的录入和if

 

 

 

/*
	为了让程序的数据更符合开发的数据,我们就加入了键盘录入。
	让程序更灵活一下。
	
	那么,我们如何实现键盘数据的录入呢?
		A:导包
			格式:
				import java.util.Scanner; 
			位置:
				在class上面。
		B:创建键盘录入对象
			格式:
				Scanner sc = new Scanner(System.in);
		C:通过对象获取数据	
			格式:
				int x = sc.nextInt();
*/
import java.util.Scanner;

class ScannerDemo {
	public static void main(String[] args) {
		//创建键盘录入数据对象
		Scanner sc = new Scanner(System.in);
		
		System.out.println("请你输入一个数据:");
		int x = sc.nextInt();
		
		System.out.println("你输入的数据是:"+x);
	}
}

 

 

/*
	键盘录入练习:键盘录入两个数据,获取这两个数据中的最大值
*/

import java.util.Scanner;

class ScannerTest2 {
	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 max = (a > b? a: b);
		System.out.println("max:"+max);
	}
}

 

 

/*
	练习:
		键盘录入三个数据,获取这三个数据中的最大值
		键盘录入两个数据,比较这两个数据是否相等
*/
import java.util.Scanner;

class ScannerTest3 {
	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();
		
		System.out.println("请输入第三个数据:");
		int c = sc.nextInt();
		
		//获取这三个数据中的最大值
		int temp = ((a > b)? a: b);
		int max = (temp > c? temp : c);
		System.out.println("max:"+max);
		System.out.println("------------------");
		
		//键盘录入两个数据
		System.out.println("请输入第一个数据:");
		int x = sc.nextInt();
		
		System.out.println("请输入第二个数据:");
		int y = sc.nextInt();
		
		//比较这两个数据是否相等
		boolean flag = (x == y);
		System.out.println("flag:"+flag);
	}
}

 

 

/*
	if语句的注意事项:
		A:比较表达式无论简单还是复杂,结果必须是boolean类型
		B:if语句控制的语句体如果是一条语句,大括号可以省略;
		  如果是多条语句,就不能省略。建议永远不要省略。
		C:一般来说:有左大括号就没有分号,有分号就没有左大括号
*/
class IfDemo2 {
	public static void main(String[] args) {
		int x = 10;
		
		if(x == 10) {
			System.out.println("x等于10");
		}
		
		if((x > 5) || (x == 10)) {
			System.out.println("x大于或者等于10");
		}
		System.out.println("-------------------");
		
		int a = 100;
		
		/*
		if(a == 100) {
			System.out.println("a的值是100");
		}
		*/
		
		if(a != 100) {
			System.out.println("a的值是100");
			System.out.println("over");
		}
		System.out.println("-------------------");
		
		int b = 100;
		if(b != 100);  //这里其实是有语句体的,只不过是空语句体。
		
		//代码块
		{
			System.out.println("b的值是100");
			System.out.println("over");
		}
	}
}

 

 


/*
	键盘录入月份的值,输出对应的季节。
	
	春	3,4,5
	夏	6,7,8
	秋	9,10,11
	冬	12,1,2
	
	分析:
		A:键盘录入月份的值,所以我们要使用Scanner。
		B:我们应该判断这个月份在那个季节,而这个判断情况较多,所以,用if语句格式3。
		
	if语句的使用场景:
		A:针对表达式是一个boolean类型的判断
		B:针对一个范围的判断
*/
import java.util.Scanner;

class IfTest3 {
	public static void main(String[] args) {
		//创建键盘录入对象
		Scanner sc = new Scanner(System.in);
		
		//录入数据
		System.out.println("请你输入一个月份:");
		int month = sc.nextInt();
		
		//第三种格式实现即可
		if(month<1 || month>12) {
			System.out.println("你输入的月份有误");
		}else if(month == 1) {
			System.out.println("冬季");
		}else if(month == 2) {
			System.out.println("冬季");
		}else if(month == 3) {
			System.out.println("春季");
		}else if(month == 4) {
			System.out.println("春季");
		}else if(month == 5) {
			System.out.println("春季");
		}else if(month == 6) {
			System.out.println("夏季");
		}else if(month == 7) {
			System.out.println("夏季");
		}else if(month == 8) {
			System.out.println("夏季");
		}else if(month == 9) {
			System.out.println("秋季");
		}else if(month == 10) {
			System.out.println("秋季");
		}else if(month == 11) {
			System.out.println("秋季");
		}else {
			System.out.println("冬季");
		}
		System.out.println("--------------");
		
		//这个程序确实是符合了我们的需求,但是就是看起来比较麻烦
		//那么,我们能不能改进一下呢?
		//month == 3
		//month == 4
		//month == 5
		//我们发现,上面三个都是春季。
		//而他们本身每一个都是一个boolean表达式
		//所以,我们就可以考虑使用逻辑运算符给他们连接起来改进
		if(month<1 || month>12) {
			System.out.println("你输入的月份有误");
		}else if(month==3 || month==4 || month==5) {
			System.out.println("春季");
		}else if(month==6 || month==7 || month==8) {
			System.out.println("夏季");
		}else if(month==9 || month==10 || month==11) {
			System.out.println("秋季");
		}else {
			System.out.println("冬季");
		}
		System.out.println("--------------");
		
		//这个时候,程序代码以及可以了。
		//但是呢,假如我要求你输入一个月份,判断是上半年还是下半年。
		//这个时候,我们的判断条件连接就是6个boolean表达式
		//我们可能还有更多的连接
		//这个时候,其实我们还有另外的一种改进方案:
		//month == 3
		//month == 4
		//month == 5
		//month>=3 && month<=5
		//用范围也是可以改进的。
		if(month<1 || month>12) {
			System.out.println("你输入的月份有误");
		}else if(month>=3 && month<=5) {
			System.out.println("春季");
		}else if(month>=6 && month<=8) {
			System.out.println("夏季");
		}else if(month>=9 && month<=11) {
			System.out.println("秋季");
		}else {
			System.out.println("冬季");
		}
		System.out.println("--------------");
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值