4-5旅游度假问题,请老师指正
来源:4-5 项目作业
Allisam
2021-10-05 23:17:55
相关代码:
package com.imooc.array;
import java.util.Scanner;
public class Quest4_5 {
public static void main(String[] args) {
// 旅游度假问题
Scanner sc = new Scanner(System.in);
String[] str = new String[5];
for (int i = 0; i < str.length; i++) {
System.out.println("请输入第" + (i + 1) + "个旅游目的地");
str[i] = sc.next();
}
System.out.println("以下地方供旅游参考:");
for (String s : str) {
System.out.print(s + " ");
}
int num = (int) (Math.random() * 10 % 6);
System.out.println('\n' + "随机生成的旅游目的地:" + str[num]);
}
}
1回答
同学你好,同学的代码中生成随机数使用的是:
int num = (int) (Math.random() * 10 % 6);
这条语句生成的随机数中包含5,当访问数组下标5的时候会出现java.lang.ArrayIndexOutOfBoundsException数组下标越界异常。
建议同学将这句修改为:
int num = (int) (Math.random() * 5);
祝学习愉快~
相似问题