【第22期】观点:IT 行业加班,到底有没有价值?

java 实现 分组 函数

转载 2016年05月31日 17:33:23
public class test {
	public static void main(String[] args) {
		List<Bill> list = new ArrayList<Bill>();
		Bill b = new Bill();
		b.setType("A");
		b.setMoney(1);
		list.add(b);
		b = new Bill();
		b.setType("B");
		b.setMoney(2);
		list.add(b);
		b = new Bill();
		b.setType("C");
		b.setMoney(3);
		list.add(b);
		b = new Bill();
		b.setType("A");
		b.setMoney(1);
		list.add(b);
		b = new Bill();
		b.setType("B");
		b.setMoney(2);
		list.add(b);
		b = new Bill();
		b.setType("C");
		b.setMoney(3);
		list.add(b);


		List<Bill> bi = new ArrayList<Bill>();
		for (Bill bill : list) {
			boolean state = false;
			for (Bill bills : bi) {
				if(bills.getType().equals(bill.getType())){
					int money = bills.getMoney();
					money += bill.getMoney();
					bills.setMoney(money);
					state = true;
				}
			}
			if(!state){
				bi.add(bill);
			}
		}
		for (Bill bill : bi) {
			System.out.println(bill.getType() +"    " +bill.getMoney());
		}
	}
}

package com.zhangxuan.platform.test;

import java.util.ArrayList;
import java.util.List;
import java.util.TreeSet;


public class T {
	public static void main(String[] args) {
		List<Bill> lb = new ArrayList<Bill>();
		Bill b;
		for(int i = 0; i < 20; i ++) {
			b = new Bill();
			if(i % 2 == 0) 
				b.setType("t1");
			else 
				b.setType("t2");
			b.setMoney(i + 1000);
			lb.add(b);
		}
		TreeSet<String> tss = new TreeSet<String>();
		for(Bill bi : lb) {
			tss.add(bi.getType());
		}
		List<Bill> lbs = new ArrayList<Bill>();
		int total = 0;
		for(String t : tss) {
			b = new Bill();
			b.setType(t);
			for(Bill bl : lb) {
				if(t.equals(bl.getType())) {
					total += bl.getMoney();
				}
			}
			b.setMoney(total);
			lbs.add(b);
		}
		
		for(Bill bill : lbs ) {
			System.out.println(bill.getType() + " - " + bill.getMoney());
		}
	}
	

}

class Bill {
	String type;
	int money;
	
	public Bill() {
		
	}
	
	public String getType() {
		return type;
	}
	public void setType(String type) {
		this.type = type;
	}
	public int getMoney() {
		return money;
	}
	public void setMoney(int money) {
		this.money = money;
	}
	
	
}


举报

相关文章推荐

Java 代码实现分组

 Java 代码实现分组: 原理实际是利用map的key的唯一性来作为分组关键点,然后使用list封装内容,核心代码如下,调用过程中,需要重新实现groupBy接口,即说明是根据什么来...

java 集合(List)元素分组

package list.arraylist; import java.util.ArrayList; import java.util.List; /** * 此类实现了集合按某种规则分组...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

java 趣味小编程 运动员分组

有N个人参加100米短跑比赛。跑道为8条。程序的任务是按照尽量使每组的人数相差最少的原则分组。 例如: N=8时,分成1组即可。 N=9时,分成2组:一组5人,一组4人。 N=25时,分4组:...

JAVA 集合 List 分组的两种方法

从网上找了两种方法,效率差不多,这里贴出代码供大家参考 实体类Data public class Data { private Long id ; private Long ...

java 实现数据库分组功能

import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util...

java中对list集合中的数据按照某一个属性进行分组

java list分组。 list里面封装的都是实体对象或Map,现要按照对象的某个属性进行分组。

【java】将List中的实体按照某个字段进行分组的算法

使用语言:JAVA 如何将List中存放的实体按照某个字段进行分组呢?来看看下面的例子,假如实体中有个字段叫批次号,我们将具有相同批次号的实体放在一起,那么怎么实现呢?看下面的代码: ...

Java中使用Map对象进行数据分组

通过数据库的分组函数,我们可以很轻易的对数据进行分组。如果要在Java内对查到的分组数据进行处理(不对数据库发出多次查询)。那就可以使用Map对象来处理。将分组关键字段的值作为索引key,entry为...

用java语言用sort方法实现groupby分组

用java语言用sort方法实现groupby分组    用排序的方法实现groupby分组,给定数据如下所示。老王|A|90 李四|B|87 张三|C|70 老王|A|67 张三|A|98 李四|B...

一个基于Java的简单分组处理算法

一个基于Java的简单分组处理算法问题描述:在一个已经经过严格分组(从数据库中用 order by 命令读出)的一个数组中,需要将其根据相应的单位不同分组,即将单位相同的统计项放在同一个数组中,从数据...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)