用JAVA把每一行数据封装为一个User对象
时间: 2024-05-02 19:17:42 浏览: 88
假设每一行数据包含三个字段:id、name、age,以下是封装为User对象的代码示例:
```java
public class User {
private int id;
private String name;
private int age;
public User(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
// getter and setter methods
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 int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
```
然后,我们可以使用Java的文件读取功能,按行读取数据,并将每一行数据封装为一个User对象:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
String fileName = "data.txt"; // 数据文件名
List<User> userList = new ArrayList<>(); // 用于存放封装后的User对象
try (BufferedReader br = new BufferedReader(new FileReader(fileName))) {
String line;
while ((line = br.readLine()) != null) {
String[] fields = line.split(","); // 将每一行数据按逗号分割为三个字段
int id = Integer.parseInt(fields[0]);
String name = fields[1];
int age = Integer.parseInt(fields[2]);
User user = new User(id, name, age);
userList.add(user);
}
} catch (IOException e) {
e.printStackTrace();
}
// 打印封装后的User对象
for (User user : userList) {
System.out.println(user.getId() + "\t" + user.getName() + "\t" + user.getAge());
}
}
}
```
上述代码中,我们使用了Java的try-with-resources语句,确保文件读取完毕后自动关闭文件流。同时,我们使用了Java的split方法将每一行数据按逗号分割,然后将三个字段转换为对应的类型,并封装为一个User对象。最后,我们将所有的User对象存放在一个List中,并打印出来。
阅读全文