A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张润泽 初级黑马   /  2019-1-8 16:36  /  676 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

异常一
创建
张润泽
问题标题
运行错误
问题分类
程序运行,抛出java.lang.IndexOutOfBoundsException异常
一级话题
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index 4 out-of-bounds for length 4
问题补充
附件
Random random = new Random();
for (int i = 1; i <= 4; i++) {
    System.out.println("第" + i + "组: ");
    for (int i1 = 1; i1 <= 4; i1++) {
        random.nextInt(list.size());
        String s = list.get(i);
        list.remove(list.get(i));
        System.out.print(s + " ");
    }
    System.out.println();
}
问题答案
问题分析:
脑子不清楚,创建了随机数对象,但是使用的时候不正确
程序报错
问题解决方法:
Random random = new Random();
for (int i = 1; i <= 4; i++) {
    System.out.println("第" + i + "组: ");
    for (int i1 = 1; i1 <= 4; i1++) {
        int a = random.nextInt(list.size());
        String s = list.get(a);
        list.remove(list.get(a));
        System.out.print(s + " ");
    }
    System.out.println();
}
异常二
创建
张润泽
问题标题
编译报错
问题分类
概念不清晰
一级话题
问题补充
Collection<String> list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("赵六");
System.out.println(list);
int l = list.length;
附件
问题答案
问题分析:
对于概念理解的不清晰,没有记清.获取长度的方法如下:
数组:使用length属性,比如:arr.length
字符串:使用length()方法,比如:str.length()
集合:使用size()方法,比如:list.size()
问题解决方法:
Collection<String> list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("赵六");
System.out.println(list);
int size = list.size();

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马