我必須獲取 ID 與 UserIN 串列匹配的 UserName -> firstname 和 lastname。
我不知道如何準確地做到這一點,我認為 for 回圈很糟糕,我們可以通過 Collecions 來做到這一點,以避免糟糕的實作。
有什么解決辦法嗎?
用戶輸入類:
public class UserIN {
int id;
UserName name;
@Override
public String toString() {
return "UserIN{"
"id=" id
", name=" name
'}';
}
public UserIN(int id, UserName name) {
this.id = id;
this.name = name;
}
// getters & setters here
}
用戶名類:
public class UserName {
String firstname;
String lastname;
@Override
public String toString() {
return "UserName{"
"firstname='" firstname '\''
", lastname='" lastname '\''
'}';
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public UserName() {}
public UserName(String firstname, String lastname) {
this.firstname = firstname;
this.lastname = lastname;
}
}
uj5u.com熱心網友回復:
如果要避免回圈,可以使用Map
import java.util.*;
...
// Maps user ids (integer) to UserName objects:
Map<Integer, UserName> map = new HashMap<>();
// Create two users and put them in the map:
UserIN user0 = new UserIN(0, new UserName("Peter", "Woodbridge"));
UserIN user1 = new UserIN(1, new UserName("Anne", "Miller"));
map.put(user0.id, user0.name);
map.put(user1.id, user1.name);
// Get user with id==1 from the map and print it to standard output
UserName user = map.get(1);
System.out.println(user.firstname " " user.lastname);
這列印:
Anne Miller
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/466390.html
下一篇:關閉多個掃描儀會導致問題
