-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathStudent.java
More file actions
57 lines (50 loc) · 1.94 KB
/
Student.java
File metadata and controls
57 lines (50 loc) · 1.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
public class Student {
private int id;
private String name;
private int age;
private String email;
private String program;
private double gpa;
public Student(int id, String name, int age, String email, String program, double gpa) {
this.id = id;
this.name = name;
this.age = age;
this.email = email;
this.program = program;
this.gpa = gpa;
}
public int getId() { return id; }
public String getName() { return name; }
public int getAge() { return age; }
public String getEmail() { return email; }
public String getProgram() { return program; }
public double getGpa() { return gpa; }
public void setName(String name) { this.name = name; }
public void setAge(int age) { this.age = age; }
public void setEmail(String email) { this.email = email; }
public void setProgram(String program) { this.program = program; }
public void setGpa(double gpa) { this.gpa = gpa; }
// CSV helpers (very simple; avoids commas in fields)
public String toCsvRow() {
return id + "," + safe(name) + "," + age + "," + safe(email) + "," + safe(program) + "," + gpa;
}
public static Student fromCsvRow(String row) {
String[] parts = row.split(",", -1);
int id = Integer.parseInt(parts[0]);
String name = parts[1];
int age = Integer.parseInt(parts[2]);
String email = parts[3];
String program = parts[4];
double gpa = Double.parseDouble(parts[5]);
return new Student(id, name, age, email, program, gpa);
}
private static String safe(String s) {
if (s == null) return "";
return s.replace(",", " "); // keep CSV simple
}
@Override
public String toString() {
return String.format("ID=%d | %s | age=%d | %s | program=%s | GPA=%.2f",
id, name, age, email, program, gpa);
}
}