为什么会报错的呢?

为什么会报错的呢?

http://img1.sycdn.imooc.com//climg/5b57fae70001c35a06550227.jpg

package studentscore;

import java.util.HashMap;
import java.util.Map;

import org.apache.jasper.tagplugins.jstl.core.Out;

import student.Student;

public class StuScore {
public static Map<String,Student>map=new HashMap<String,Student>();
static {
	Student put = map.put("11071010",new Student(11071010,"赵明",78));
	map.put("11071011",new Student(11071011,"李雷",100));
	map.put("11071012",new Student(11071012,"韩梅梅",90));	
}
public static void iii() {
	for(String key:map.keySet()) {
		Student student=map.get(key);
		System.out.println(student);
	}
}
}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
chrismorgen 2018-07-26 10:06:33

如下图所示,你的代码是没有问题的,建议你将Student类保存一下再试试,如果我的建议解决了你的问题,请采纳,祝学习愉快~

http://img1.sycdn.imooc.com//climg/5b592c6800010d1702760095.jpg

提问者 广州麻辣牛杂档 2018-07-25 21:50:51

http://img1.sycdn.imooc.com//climg/5b58800f0001fddd08170438.jpghttp://img1.sycdn.imooc.com//climg/5b58802400011b6c09070478.jpg

package student;



public class Student {
private String number;
private String name;
private String score;
public Student(String number, String name,String score) {
	super();
	this.number = number;
	this.name = name;
	this.score = score;
}

public String getNumber() {
	return number;
}
public void setNumber(String number) {
	this.number = number;
}
public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}
public String getScore() {
	return score;
}
public void setScore(String score) {
	this.score = score;
}

}
package studentscore;

import java.util.HashMap;
import java.util.Map;
import student.*;

public class StuScore {
public static Map<String,Student>map=new HashMap<String,Student>();
static {
	 map.put("11071010",new Student("11071011","哈哈","33"));
//	 map.put("11071011",new Student("11071011","李雷","100"));
//	 map.put("11071012",new Student("11071012","韩梅梅","90"));	
}
public static void iii() {
	for(String key:map.keySet()) {
		Student student=map.get(key);
		System.out.println(student);
	}
}
}


chrismorgen 2018-07-25 18:03:08

在Student类中添加toString方法后,运行效果如下图,

http://img1.sycdn.imooc.com//climg/5b584a170001b1fa06260115.jpg

如下图所示,为什么要写成标记代码的那样?是想达到什么效果吗?

http://img1.sycdn.imooc.com//climg/5b584a500001dd8304990068.jpg

建议同学将你的工程目录截图贴上来,祝学习愉快~


  • 提问者 广州麻辣牛杂档 #1
    Student put 是点击提示 自动添加的,添加后就不报错了 ,但好像跟课程不一样,我也不知道能达到什么效果,因为思路还不清晰
    2018-07-25 21:49:13
chrismorgen 2018-07-25 13:56:45

你可以将鼠标移动到飘红的代码处,然后查看一下报错信息。根据报错位置来看,应该是你的参数与Student类中的构造方法类型不匹配造成的。建议你检查一下Student类中的数据类型是下图中的类型吗?祝学习愉快~

http://img1.sycdn.imooc.com//climg/5b5810fe0001da4506470045.jpg

  • 提问者 广州麻辣牛杂档 #1
    package student; public class Student { private int number; private String name; private int score; public Student(int number, String name, int score) { super(); this.number = number; this.name = name; this.score = score; } public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } }
    2018-07-25 16:06:50
  • 提问者 广州麻辣牛杂档 #2
    我的学生类型分别是 int , String , int
    2018-07-25 16:07:22
  • 提问者 广州麻辣牛杂档 #3
    错误提示 :Multiple markers at this line - Line breakpoint:StuScore [line: 15] - {...} - The constructor Student(int, String, int) is undefined
    2018-07-25 16:08:00
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
从网页搭建入门Java Web2018版
  • 参与学习           人
  • 提交作业       1088    份
  • 解答问题       10205    个

如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师