gpt4 book ai didi

Java-使用 if/else 和 switch 语句将名称与名称列表进行比较

转载 作者:行者123 更新时间:2023-11-30 06:05:20 26 4
gpt4 key购买 nike

我是一名初学者编码员,正在尝试弄清楚如何使用嵌套的 if/else 和 switch 语句。我决定挑战自己,编写 2 个程序(一个带有 if/else,一个带有 switch),将 1 个人的名字与至少 15 个其他人的名字进行比较。如果该 1 个名字与其他 15 个名字中的任何一个匹配(除了该人自己的名字),它就会打印一些内容。例如,这 15 个名字将是足球队中每个人的名字。我想看看团队中是否有人与他们同名。对于 if/else 程序,我目前有这个:

package practice;

public class ClassmatesIfElse {

public static void main(String[] args) {
String name = "person";
if(name.equals("person1")|| name.equals("person2") || name.equals("person3") || name.equals("person4") || name.equals("person5") || name.equals("person6") || name.equals("person7") || name.equals("person8") || name.equals("person10"))
System.out.println("Duplicate");
else System.out.println("Unique");
}

}

但显然,这是非常麻烦的,除非你从列表中删除你想要测试的人,否则它不起作用,这违背了程序的目的。我不知道从哪里开始 switch 语句一。解决这个问题的最佳方法是什么?谢谢。

最佳答案

因此,我同意以下评论:如果您正在寻找最有效的方法来确定 15 个名称中是否存在重复项,那么您可能需要使用嵌套 if/then 语句或 switch 之外的其他方法。我实际上建议使用 Map 来完成此类工作,将名称存储为键,并将其出现次数存储为值(我很乐意创建一个这样的示例;请告诉我)。

但是,要回答如何使用 switch 语句执行相同代码的问题,请参阅下文。代码实际上很长,但可能更容易阅读:

class SwitchExample {

private static final String SUCCESS= "Hey! You have a name doppleganger in the class!";

public static void main(String[] args) {
String name = "person";

switch(name) {
case "person1":
System.out.println(SUCCESS);
break;

case "person2":
System.out.println(SUCCESS);
break;

case "person3":
System.out.println(SUCCESS);
break;

case "person4":
System.out.println(SUCCESS);
break;

case "person5":
System.out.println(SUCCESS);
break;

case "person6":
System.out.println(SUCCESS);
break;

case "person7":
System.out.println(SUCCESS);
break;

case "person8":
System.out.println(SUCCESS);
break;

case "person10":
System.out.println(SUCCESS);
break;

default:
System.out.println("Your name is unique in this class!");

}
}
}

关于Java-使用 if/else 和 switch 语句将名称与名称列表进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51462962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com