任务是在1到7之间的数字帮助下选择星期几。所以,例如,如果我选择了第一个,那么输出会给我一个星期一的名字(这些日子是捷克语,我希望你不要介意) 我写了这样的东西,但还没有完成它:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Vyberta den v týdnu pomocí číslice 1 - 7:");
int vyber = Integer.parseInt(sc.nextLine());
String[] dny = {"Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota", "Neděle"};
for (int i = 0; i < dny.length; i++) {
if ( int vyber == dny [i])
}
if(int vyber == dny [i]) { ... }
}
答案 0 :(得分:1)
您无需遍历数组。这样做
System.out.println(dny[vyber - 1]);
但是,您可能还需要确保输入的号码在[1-7]
if (vyber >= 1 && vyber <= 7) { //array indices start at 0
System.out.println(dny[vyber - 1]);
} else {
System.out.println("Invalid");
}
正如评论中所提到的,使用枚举更适合这种情况。
答案 1 :(得分:0)
您正在尝试将int
与String
进行比较,这将导致您无处可去。您应该将vyber
与数组的索引进行比较,但请注意vyber
的范围是1到7,索引数组的范围是0到6,所以也许你应该比较{{1}到viber
。
请注意,在i+1
中您混合重新初始化if ( int vyber == dny [i])
变量并进行比较,因此您应跳过vyber
部分并正确比较两个整数int