Collections工具类
类java.util.Collectios提供了对Set、List、Map进行排序、填充、查找元素的辅助方法。
- 1,void sort(List) // 对List容器内的元素排序,排序的规则是按照升序进行排序
- 2,void shuffle(List) // 对List容器内的元素进行随机排列。
- 3,void reverse(List) //对List容器内的元素进行逆序排列
- 4,void fill(List,Object) //用一个特定的对象重写整个List容器
- 5,int binarySearch(List,Object) //对于顺序的List容器,采用折半查找的方法查找特定对象
示例:Collections工具类的常用方法
import java.util.*;
public class Test {
public static void main(String[] args){
List<String> aList = new ArrayList<String>();
for (int i=0;i<5;i++){
aList.add("a" + i);
}
System.out.println(aList);
Collections.shuffle(aList);//随机排列
System.out.println(aList);
Collections.reverse(aList); //逆序
System.out.println(aList);
Collections.sort(aList); // 排序
System.out.println(aList);
//二分法查找
System.out.println(Collections.binarySearch(aList,"a2"));
Collections.fill(aList,"Hello");
System.out.println(aList);
}
}
运行结果
[a0, a1, a2, a3, a4]
[a0, a2, a4, a3, a1]
[a1, a3, a4, a2, a0]
[a0, a1, a2, a3, a4]
2
[Hello, Hello, Hello, Hello, Hello]
import java.util.*;
public class TestStoreFata {
public static void main(String[] args){
Map<String,Object> row1 = new HashMap<>();
row1.put("id",1001);
row1.put("姓名","Pjs");
row1.put("薪水",10000);
row1.put("入职日期","2018.5.5");
Map<String,Object> row2 = new HashMap<>();
row1.put("id",1002);
row1.put("姓名","Pj");
row1.put("薪水",6000);
row1.put("入职日期","2018.6.5");
Map<String,Object> row3 = new HashMap<>();
row1.put("id",1003);
row1.put("姓名","js");
row1.put("薪水",100000);
row1.put("入职日期","2018.4.5");
List<Map<String,Object>> table = new ArrayList<>();
table.add(row1);
table.add(row1);
table.add(row1);
for (Map<String,Object> row:table){
Set<String> keyset = row.keySet();
for (String key:keyset){
System.out.print(key+":"+row.get(key));
}
System.out.println();
}
}
}
使用容器存储表格数据
每一行数据使用一个:Map
整个表格使用一个:List
import java.util.*;
public class TestStoreFata {
public static void main(String[] args){
Map<String,Object> row1 = new HashMap<>();
row1.put("id",1001);
row1.put("姓名","Pjs");
row1.put("薪水",10000);
row1.put("入职日期","2018.5.5");
Map<String,Object> row2 = new HashMap<>();
row1.put("id",1002);
row1.put("姓名","Pj");
row1.put("薪水",6000);
row1.put("入职日期","2018.6.5");
Map<String,Object> row3 = new HashMap<>();
row1.put("id",1003);
row1.put("姓名","js");
row1.put("薪水",100000);
row1.put("入职日期","2018.4.5");
List<Map<String,Object>> table = new ArrayList<>();
table.add(row1);
table.add(row1);
table.add(row1);
for (Map<String,Object> row:table){
Set<String> keyset = row.keySet();
for (String key:keyset){
System.out.print(key+":"+row.get(key));
}
System.out.println();
}
}
}
没一行数据使用一个:javabean对象
整个表格使用一个:Map/List
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.HashMap;
import java.util.Map;
public class TestStoreFata2 {
public static void main(String[] args){
User user1 = new User(1001,"A",10000,"2019.1.1");
User user2 = new User(1002,"B",20000,"2019.2.2");
User user3 = new User(1003,"C",30000,"2019.3.3");
List<User> list = new ArrayList<>();
list.add(user1);
list.add(user2);
list.add(user3);
for (User u:list){
System.out.println(u);
}
System.out.println("***************************************************");
Map<Integer,User> map = new HashMap<>();
map.put(1001,user1);
map.put(1002,user2);
map.put(1003,user3);
Set<Integer> keyset = map.keySet();
for(Integer key:keyset){
System.out.println(key+"-----------"+map.get(key));
}
}
}
class User {
private int id;
private String name;
private double salary;
private String hiredate;
//一个完整的Javabean,要有完整的set,get方法和一个空参构造器
public User(){} //空参构造
public User(int id,String name,double salary,String hiredate){
super();
this.id = id;
this.name = name;
this.salary = salary;
this.hiredate = hiredate;
}
public int getId(){
return id;
}
public void setId(int id){
this.id = id;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public double getSalary(){
return salary;
}
public void setSalary(double salary){
this.salary = salary;
}
public String getHiredate(){
return hiredate;
}
public void setHiredate(String hiredate){
this.hiredate = hiredate;
}
@Override
public String toString() {
return "id:" + id + ",name:" + name + ",salary:" + salary + ",hiredate:" + hiredate;
}
}