使用javabean结合容器存储数据
程序员文章站
2022-06-27 16:27:11
使用javabean结合容器存储数据这里的javabean听起来很新鲜,其实不是新东西,就是把被存储的对象封装成 一个类,然后使用容器(Map,List或者Set)来存储这些对象。下面直接看实现程序吧:package mycollection;import java.util.*;/** * 测试使用javabean结合List存储表格数据 * * @author 发达的范 * @date 2020/11/21 21:34 */public class TestStoreDat...
使用javabean结合容器存储数据
这里的javabean听起来很新鲜,其实不是新东西,就是把被存储的对象封装成 一个类,然后使用容器(Map,List或者Set)来存储这些对象。
ID | Name | Wages | Register date |
---|---|---|---|
1 | 唐三藏 | 10000 | 1234 |
2 | 孙悟空 | 20000 | 1235 |
3 | 猪八戒 | 30000 | 1236 |
下面直接看实现程序吧:
package mycollection;
import java.util.*;
/**
* 测试使用javabean结合List存储表格数据
*
* @author 发达的范
* @date 2020/11/21 21:34
*/
public class TestStoreData02 {
public static void main(String[] args) {
Employees employees1 = new Employees(001, "唐三藏", 10000, "1234");
Employees employees2 = new Employees(002, "孙悟空", 20000, "1235");
Employees employees3 = new Employees(003, "猪八戒", 30000, "1236");
List<Employees> list = new ArrayList<>();
list.add(employees1);
list.add(employees2);
list.add(employees3);
for (Employees e : list) {
System.out.println(e);
}
System.out.println("==============");
for (Iterator iterator = list.iterator(); iterator.hasNext(); ) {
System.out.println(iterator.next());
}
System.out.println("==============");
Map<Integer, Employees> map = new HashMap<>();
map.put(employees1.getID(), employees1);
map.put(employees2.getID(), employees2);
map.put(employees3.getID(), employees3);
//方法一:因为Map接口中没有Iterator迭代器,所以把HashMap的键值对存入Set中,然后使用Set的Iterator来遍历HashMap
Set<Map.Entry<Integer, Employees>> set = map.entrySet();
Iterator<Map.Entry<Integer, Employees>> iterator = set.iterator();
while (iterator.hasNext()) {
Map.Entry<Integer, Employees> temp = iterator.next();
System.out.println(temp);
}
System.out.println("==============");
//方法一:因为Map接口中没有Iterator迭代器,所以把HashMap的键存入Set中,然后使用Set的Iterator来遍历HashMap
Set<Integer> set1 = map.keySet();
for (Iterator<Integer> iterator1 = set1.iterator(); iterator1.hasNext(); ) {
Integer key = iterator1.next();
System.out.println(map.get(key));
}
System.out.println("==============");
for (Integer key : set1) {
System.out.println(map.get(key));
}
}
}
class Employees {
private int ID;
private String Name;
private double Wages;
private String RegisterData;
public Employees() {//使用javabean存储数据时一般把无参构造器显示表达
}
public Employees(int ID, String name, double wages, String registerData) {
this.ID = ID;
Name = name;
Wages = wages;
RegisterData = registerData;
}
public int getID() {
return ID;
}
public void setID(int ID) {
this.ID = ID;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public double getWages() {
return Wages;
}
public void setWages(double wages) {
Wages = wages;
}
public String getRegisterData() {
return RegisterData;
}
public void setRegisterData(String registerData) {
RegisterData = registerData;
}
@Override
public String toString() {
return "ID:" + ID + "\t" + "Name:" + Name + "\t" + "Wages:" + Wages + "\t" + "RegisterData:" + RegisterData;
}
// @Override
// public String toString() {
// return "Employees{" +
// "ID=" + ID +
// ", Name='" + Name + '\'' +
// ", Wages=" + Wages +
// ", RegisterData='" + RegisterData + '\'' +
// '}';
// }
}
运行结果:
说一下几个需要注意的地方:
- 使用javabean结合容器存储数据的时候,用于实例化对象的类(此处指的是Employees类)一般是写出所有的get/set方法,并把无参构造器显示表达;
- 实例化每个对象之后,可以根据需要*选择不同的容器存储这些对象;
- 遍历容器的方法有很多,需要注意区分和使用。
- 遍历List、Set均可使用增强for循环,或者直接使用List、Set接口的Iterator迭代器进行遍历
- 由于Map接口中没有Iterator迭代器,所以可以选择把HashMap的键值对(或者键)放入Set容器中,使用Set的Iterator进行遍历。
本文地址:https://blog.csdn.net/fada_is_in_the_way/article/details/109910377
推荐阅读
-
Mysql使用存储过程快速添加百万数据的示例代码
-
PHP的Laravel框架结合MySQL与Redis数据库的使用部署
-
Android数据存储之SQLite使用
-
IOS使用NSUserDefault去实现界面传值和数据存储
-
详解iOS使用Keychain中的kSecClassGenericPassword存储数据
-
IOS使用NSUserDefault去实现界面传值和数据存储
-
android使用SharedPreferences进行数据存储
-
Android数据存储之SQLite使用
-
在ASP.NET 2.0中操作数据之六十六:在TableAdapters中使用现有的存储过程
-
android使用SharedPreferences进行数据存储