java(Collection接口)练习07
2017-10-26 08:00
429 查看
.定义一个Employee类,属性:name:String,age:int,salary:double
把若干Employee对象放在List中,排序并遍历输出,排序规则:salary高的在前面,salary相同时age大的在前面,age也相同时按照name升序排列
把若干Employee对象放在Set中并遍历,要求没有重复元素
package com.oracle.test1025;
public class Employee {
}
=================================================================
package com.oracle.test1025;
import java.util.ArrayList;
import java.util.List;
public class Test {
}
把若干Employee对象放在List中,排序并遍历输出,排序规则:salary高的在前面,salary相同时age大的在前面,age也相同时按照name升序排列
把若干Employee对象放在Set中并遍历,要求没有重复元素
package com.oracle.test1025;
public class Employee {
private String name; private int age; private double salary; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public double getSalary() { return salary; } public void setSalary(double salary) { this.salary = salary; } public Employee(String name, int age, double salary) { super(); this.name = name; this.age = age; this.salary = salary; } public Employee() { super(); // TODO Auto-generated constructor stub } @Override public String toString() { return "姓名:" + name + ", 年龄:" + age + ", 工资:" + salary ; }
}
=================================================================
package com.oracle.test1025;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) { Employee e1 = new Employee("大海燕",19,3000); Employee e2 = new Employee("小黑",20,3100); Employee e3 = new Employee("傲娇",18,4000); Employee e4 = new Employee("苏老大",22,5000); Employee e5 = new Employee("马冬梅",21,2000); Employee e6 = new Employee("女神",18,7000); List<Employee> list = new ArrayList<Employee>(); list.add(e1); list.add(e2); list.add(e3); list.add(e4); list.add(e5); list.add(e6); for (Employee e : list) { System.out.println(e); } System.out.println("==============排序后=================="); for (int i = 1; i < list.size(); i++) { for (int j = 0; j < list.size()-i; j++) { Employee emp1 = list.get(j); Employee emp2 = list.get(j+1); //比较收入 if(emp1.getSalary()<emp2.getSalary()){ list.set(j, emp2); list.set(j+1, emp1); }else if(emp1.getSalary() == emp2.getSalary()){ //比较年龄 if(emp1.getAge() < emp2.getAge()){ list.set(j, emp2); list.set(j+1, emp1); }else if(emp1.getAge() == emp2.getAge()){ if(emp1.getName().compareTo(emp2.getName())>0){ list.set(j, emp2); list.set(j+1, emp1); } } } } } for (Employee e : list) { System.out.println(e); } }
}
相关文章推荐
- javaSE_07Java中类和对象-封装特性--练习
- 07_Java基础语法_第7天(练习)
- JAVA面向对象练习07(灯泡发亮)
- 07 JAVA IO流 练习
- java的练习
- Java 基础一些代码练习笔记(StringBuffer)
- java练习——客户信息(方法简单理解)
- java打字系统模拟打字练习采用JFrame+IO文件操作+线程源码
- Java基础集合之TreeSet练习(带答案)
- 黑马程序员——Java--IO流练习笔记
- Thinking in Java - Fourth Edition 章节练习个人解答——第6章
- 算法笔记_088:蓝桥杯练习 8-1因式分解(Java)
- java例程练习(多态/动态绑定/迟绑定)
- java学习记录——类和对象的练习3
- [java][37]异常4-try-catch-finally练习
- 学习练习 java面向对象梯形面积
- Java8 Collection接口源码阅读(二)
- java常用类String、Integer练习
- Java练习:牛顿迭代法 Vs. 不动点
- Java类集--认识类集、Collection接口