统计list集合中的对象数量

你看咩啊 2017-07-26 04:17:27
一个由question对象组成的list集合,长度不确定。question对象本身包含两个属性,一个是questionType(类型)一个是questionNum(数量)。现在的需求是根据类型统计数量,即questionType相同,就将相同的类型的数量相加,请问我该怎么实现。小白,求各位大神能给个例子
...全文
2087 2 打赏 收藏 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
你看咩啊 2017-07-26
  • 打赏
  • 举报
回复
引用 1 楼 minemine0418 的回复:


List<Question> list = new ArrayList<Question>();
		Question q1 = new Question();
		q1.setType("类型A");
		q1.setNum(10);
		
		Question q2 = new Question();
		q2.setType("类型B");
		q2.setNum(20);
		
		Question q3 = new Question();
		q3.setType("类型A");
		q3.setNum(30);
		
		list.add(q1);
		list.add(q2);
		list.add(q3);
		
		Map<String, Integer> map = new HashMap<String, Integer>();/
		for (Question question : list) {
			if(map.containsKey(question.getType())){
				Integer oldNum = map.get(question.getType());
				map.put(question.getType(), oldNum+question.getNum());
			}else{
				map.put(question.getType(), question.getNum());
			}
		}
		System.err.println(map);
感谢
minemine0418 2017-07-26
  • 打赏
  • 举报
回复


List<Question> list = new ArrayList<Question>();
		Question q1 = new Question();
		q1.setType("类型A");
		q1.setNum(10);
		
		Question q2 = new Question();
		q2.setType("类型B");
		q2.setNum(20);
		
		Question q3 = new Question();
		q3.setType("类型A");
		q3.setNum(30);
		
		list.add(q1);
		list.add(q2);
		list.add(q3);
		
		Map<String, Integer> map = new HashMap<String, Integer>();/
		for (Question question : list) {
			if(map.containsKey(question.getType())){
				Integer oldNum = map.get(question.getType());
				map.put(question.getType(), oldNum+question.getNum());
			}else{
				map.put(question.getType(), question.getNum());
			}
		}
		System.err.println(map);

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧