Java 关于hashmap的创建。

Java关于hashmap的创建:问题描述如下,有这样一个编程要求step1:创建类StudentJavaScore,实现comparable接口,包含两个字段intja... Java 关于hashmap的创建:
问题描述如下,有这样一个编程要求
step1:创建类StudentJavaScore,实现comparable接口,包含两个字段int javaScore记录java成绩,String name表示学生姓名,生成对应的getter/setter方法,comparable接口要求的compareTo方法,以javaScore的大小决定对象的大小,如果javaScore相等,当前对象小,否则javaScore大的对象序列大,重写toString()函数。
step2:建立ScoreOperation类,并在类中建立publicvoidmakeHashMapFile(File file)方法,该方法中通过Scanner类读入学生姓名及成绩存储在LinkedList对象中,通过Iterator遍历LinkedList将学生姓名和成绩作为“键/值”对添加到新创建的HashMap对象中,用恰当的Java IO类将HashMap对象写入存储在File指定的文件中。
提问:这个hashmap该如何定义? 即键值对在同一类中Hashmap<x,y>,
x.y分别该写什么?
请大神指点,最好可以写出整个的hashmap的定义存储过程 谢。
开发环境:exlpse luna
jdk7
utf-8
其实 我的Hashmap已经做出来了 就是排序部分真的有错 如果刚好有java方面的高手看到麻烦真的帮忙下
运行效果如下

当前已写部分相关代码:
public class StudentJavaScore implements Comparable {
int JavaScore;
String name;
public int compareTo(Object b){
StudentJavaScore sjs = (StudentJavaScore) b;
if((this.JavaScore - sjs.JavaScore)==0)
return -1;
else
return (int)((this.JavaScore - sjs.JavaScore)*100);
}
public String toString(){
return name+JavaScore;
}
}
展开
 我来答
乌微月2S
推荐于2017-10-09 · TA获得超过5037个赞
知道大有可为答主
回答量:5361
采纳率:42%
帮助的人:2843万
展开全部

用hashmap好像是你自己想的,我觉得用treeMap不是更好,而且类已经实现Comparable接口了。

public int compareTo(Object b) {
StudentJavaScore sjs = (StudentJavaScore) b;
if (this.JavaScore >sjs.JavaScore) 
return 1;
else if (this.JavaScore==sjs.JavaScore)
return 0;
else
return -1;

}

compareTo方法应该类似这样。你看看吧。

追问
稍等哈 我先去把这个项目编完再回来采纳你的答案 我好像错解了老师的意思,hashmap好像只需要把姓名跟成绩存储进去就行。不需要排序。。后面有一个排序的treemap。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式