黑马程序员技术交流社区
标题:
List集合输出问题?
[打印本页]
作者:
汪璨
时间:
2012-6-10 21:44
标题:
List集合输出问题?
一个List<Student>类型的集合中有以下数据:
Student类中的属性有:
Company ,No1,NO2,NO3,NO4;
省略getter。setter.
输出的结果是:
Company No1 No2 No3 No4
WTCCNDEPT1 0 0 2 1
WTCCNDEPT1 0 0 3 1
WTCCNDEPT1 0 0 2 1
WTCCNDEPT2 0 0 3 2
WTCCNDEPT2 0 0 3 2
这种输出来.有重复的数据..我想要的结果是:
//如果重复;则把重复的行变成一行;然后把NO1, NO2,NO3,NO4 的列的值累加.
还有一种情况就是;两行的值,完全相通,则移除一行.;
Company No1 No2 No3 No4
WTCCNDEPT1 0 0 7 3
WTCCNDEPT2 0 0 3 2
求大家帮下忙
作者:
赵兵锋
时间:
2012-6-10 22:48
public class Main{
public static void main(String[] args) {
List<Student> list = new ArrayList<Student>();
list.add(new Student("WTCCNDEPT1",0,0,2,1));
list.add(new Student("WTCCNDEPT1",0,0,3,1));
list.add(new Student("WTCCNDEPT1",0,0,2,1));
list.add(new Student("WTCCNDEPT2",0,0,3,2));
list.add(new Student("WTCCNDEPT2",0,0,3,2));
System.out.println("如果重复,把重复的行变为一行,且No1,No2,No3,No4值累加");
System.out.println("Company\t\tNo1\tNo2\tNo3\tNo4");
for(int i=0;i<list.size();i++){
int j=0;
Student s = list.get(i);
for(;j<i;j++){
if(list.get(i).toString().equals(list.get(j).toString())){//检查前面时候有重复的
break;//前面有重复的
}
}
if(j==i){//前面没有重复的
int counts = 1;
for(j=i+1;j<list.size();j++){
if(list.get(i).toString().equals(list.get(j).toString())){//检查后面是否有重复的
counts++;//后面有重复的
}
}
System.out.println(s.getCompany()+"\t"+s.getNo1()*counts+"\t"+s.getNo2()*counts+"\t"+s.getNo3()*counts+"\t"+s.getNo4()*counts);
}
}
System.out.println("两行的值完全相同,就移除一行");
System.out.println("Company\t\tNo1\tNo2\tNo3\tNo4");
for(int i=0;i<list.size();i++){
int j=0;
for(;j<i;j++){
if(list.get(i).toString().equals(list.get(j).toString())){
break;
}
}
if(j==i){
System.out.println(list.get(i));
}
}
}
}
class Student{
private String company;
private int no1;
private int no2;
private int no3;
private int no4;
public Student(String c,int n1,int n2,int n3,int n4){
this.company = c;
no1 = n1;
no2 = n2;
no3 = n3;
no4 = n4;
}
public String toString(){
return company+"\t"+no1+"\t"+no2+"\t"+no3+"\t"+no4;
}
//get和set方法未贴
}
复制代码
作者:
蒋亮
时间:
2012-6-10 22:50
把你的代码发给我看看
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2