老师请问怎么往Entry映射中存数据?

老师请问怎么往Entry映射中存数据?

好比定义一个映射Entry<String,Float> score,Key表示班级名,Value表示该班的平均分,
怎么把数据(好比一班,平均90)存入到score映射中


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

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

4回答
好帮手慕酷酷 2019-11-19 16:57:55

同学你好,你的理解是正确的,key只能通过直接赋值的方式进行编写,因为Entry接口中,没有对应的setKey的方法哦!

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

所以如果使用多个班级进行平均分的计算,建议还是要使用老师之前的思路:在map集合中进行存储k-v班级与平均分的数据,然后再将map集合转化为Entry映射。可以参考老师上述的回答。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

提问者 qq_旧安_0 2019-11-19 15:37:56
老师这个是代码:
List<Entry<String, Float>> scoreArr=new ArrayList<Entry<String, Float>>();

//将数据存入List中
Entry<String, Float> score=new Entry<String, Float>() {
	
	String key=className;//className为班级名称
	Float value;
					
	@Override
	public String getKey() {
		return this.key;
	}
	
	@Override
	public Float getValue() {
		return this.value;
	}
	
	@Override
	public Float setValue(Float value) {
		this.value=value;
		return value;
	}
};
				
score.setValue(chineseAvg);//chineseAvg为该班级的平均成绩
				
scoreArr.add(score);


  • 同学你好,按照同学的编写方式也是可以的,将数据存入List中,如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
    2019-11-19 16:16:21
  • 提问者 qq_旧安_0 回复 好帮手慕酷酷 #2
    老师key值只能是这样直接赋值吗?我尝试写setKey()方法没法调用,编译也出错
    2019-11-19 16:48:18
好帮手慕酷酷 2019-11-19 15:14:39

同学你好,这里Entry是指将map键值对的对应关系封装成了对象,即键值对对象,所以不建议Entry对象进行存入数据的操作,建议应该是给map集合中进行存储k-v数据,然后再将map集合转化为Entry映射。

关于平均分排序,同学可以参考如下链接的思路:http://class.imooc.com/course/qadetail/165596

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


  • 提问者 qq_旧安_0 #1
    老师请问这样写能不能把数据存进去: List<Entry<String, Float>> scoreArr=new ArrayList<Entry<String, Float>>(); //将数据存入List中 Entry<String, Float> score=new Entry<String, Float>() { String key=className; Float value; @Override public String getKey() { return this.key; } @Override public Float getValue() { return this.value; } @Override public Float setValue(Float value) { this.value=value; return value; } }; score.setValue(chineseAvg); scoreArr.add(score);
    2019-11-19 15:33:48
提问者 qq_旧安_0 2019-11-19 13:34:49

有老师解答一下吗?

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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