我是靠谱客的博主 自觉大侠,最近开发中收集的这篇文章主要介绍Java50道经典编程题:(二十六)日期判断 ——switch语句与equals的用法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.问题重述

题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。

2.解析

2.1switch语句

Switch语句的格式是:
switch(变量){
case 变量值1:
//;
break;
case 变量值2:
//…;
break;
default:
//…;
break;
}

2.2equals与==的区别

“==” 比较的是两个变量的值是否相等,对于引用变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。(地址是否相同)
因为我们要比较的值是字符型,在用于比较int、long、double、float类型时,这些类型的值有符号,有数值上的大小,而字符型变量无符号,,==就会比价其存储地址。
示例代码:

public class demo{
    public static void main(String[] args) {        
        int n=3;
        int m=3;
        
        System.out.println(n==m);
        
        String str = new String("hello");
        String str1 = new String("hello");
        String str2 = new String("hello");
        
        System.out.println(str1==str2);
        
        str1 = str;
        str2 = str;
        System.out.println(str1==str2);
    }
}

输出结果:
true
false
true
equals比较的是两个变量是否是对同一个对象的引用,即堆中内容是否相同。(内容是否相同)所以在此时,用equals更合适一些。

3.解决问题

代码如下:

import java.util.Scanner;

//题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
public class demo {
	public static void main(String[] args) {
		System.out.println("请输入第一个英文字母:");
		Scanner scanner = new Scanner(System.in);
		String input = scanner.next();
		switch (input) {
		case "m":
			System.out.println("Monday");
			break;
		case "t":
			System.out.println("请输入第二个字母:");
			String input2 = scanner.next();
			//用equals判断后续字母是否相同
			if (input2.equals("u")) {
				System.out.println("Tuesday");
			} else if (input2.equals("h")) {
				System.out.println("Thursday");
			} else {
				System.out.println("你输入的字母有误!");
			}
			break;
		case "w":
			System.out.println("Wednesday");
			break;
		case "f":
			System.out.println("Friday");
			break;
		case "s":
			System.out.println("请输入第二个字母:");
			String input3 = scanner.next();
			//用equals判断后续字母是否相同
			if (input3.equals("u")) {
				System.out.println("Sunday");
			} else if (input3.equals("a")) {
				System.out.println("Saturday");
			} else {
				System.out.println("你输入的字母有误!");
			}
			break;
		default:
			System.out.println("你输入的字母不正确!");
			break;
		}
		scanner.close();
	}
}

最后

以上就是自觉大侠为你收集整理的Java50道经典编程题:(二十六)日期判断 ——switch语句与equals的用法的全部内容,希望文章能够帮你解决Java50道经典编程题:(二十六)日期判断 ——switch语句与equals的用法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部