传智播客旗下技术交流社区北京校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Leif- 初级黑马   /  2019-1-8 17:10  /  78 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 小石姐姐 于 2019-1-10 10:53 编辑

基础阶段_异常汇总




异常一



创建人
李子佳
问题标题
toString重写错误
问题分类
运行出来显示格式不对
一级话题
@Override
[Java] 纯文本查看 复制代码
public String toString() {
    return "Student{" + "name='" + name + '\'' +
            ", number=" + number + ", age=" + age + '}';
}
问题补充
附件
//显示格式为这个格式
@Override
[Java] 纯文本查看 复制代码
public String toString() {
    return "姓名:" + name + ", 学号:" + number + ", 年龄:" + age;
}
问题答案
问题分析:
重写toString方法是,toString方法内容可以改变输出格式
问题解决方法:
修改return后面的格式
[Java] 纯文本查看 复制代码
return "姓名:" + name + ", 学号:" + number + ", 年龄:" + age;

异常二
创建人
李子佳
问题标题
运行报错
问题分类
ArrayList<Integer>集合里拿出的元素要用Integer类型接收
一级话题
运行报错
问题补充
附件
[Java] 纯文本查看 复制代码
ArrayList<Integer> list = new ArrayList<>();
.......
Integer max = list.get(0);
Integer small = list.get(0);
for (int i = 1; i < list.size(); i++) {
    if (max < list.get(i)) {
        max = list.get(i);
    }
    if (small > list.get(i)) {
        small = list.get(i);
    }
}
......
问题答案
问题分析:
代码中第15行报错
问题解决方法:
修改代码第15行为:
[Java] 纯文本查看 复制代码
Integer max = list.get(0);
Integer small = list.get(0);
异常三
创建人
李子佳
问题标题
运行问题
问题分类
加入集合的5个对象为相同值
一级话题
问题补充
附件
[Java] 纯文本查看 复制代码
ArrayList<Student> list = new ArrayList();
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
    Student stu = new Student();
    System.out.println("请输入第" + (i + 1) + "个学员信息:");
    System.out.println("请输入姓名:");
    stu.setName(sc.next());
    System.out.println("请输入成绩:");
    stu.setScore(sc.nextInt());
    list.add(stu);
}
System.out.println(list);
问题答案
问题分析:
运行完成输出集合以后,集合内添加了5个内容相同的对象
问题解决方法:
Student stu = new Student();语句放入for循环内部,这样每次循环都会是一个新的对象


分享至 : QQ空间
收藏

0 个回复

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