Java 文字列結合 と ソート順
Javaをやってみた
まずはコードを。これだけだと再利用できるかは不明だけど。
型にとにかく手こずった。
今日の課題は、
- ソート順をIDの昇順にすること
- 文字列(リスト配列)を,区切りで一列で出力
public class UserComparator implements Comparator<User>{
@Override
public int compare(User o1, User o2) {
return o1.getUid().compareTo(o2.getUid());
}
public static void main(String args[]) {
List<User> list = new ArrayList<User>();
User user1 = new User();
user1.setUid("user500");
User user2 = new User();
user2.setUid("user002");
User user3 = new User();
user3.setUid("user503");
list.add(user1);
list.add(user2);
list.add(user3);
Collections.sort(list, new UserComparator());
for (String user : list) {
System.out.println(user.getUid());
}
文字列の,区切りは何パターンかあった。
ただ、今回の場合、上記コードのままでは型の問題でうまくいかない。
の部分を
StringBuilder builder = new StringBuilder();
for(String str : list) {
builder.append(str).append(",");
}
System.out.println(builder.substring(0, builder.length() - 1))
この書き方か、StringUtiを使って
`StringUtils.join(list, ",");‘
これでオッケイ!
とりあえず、メモとして<>この中に何か入れるとその型しか使えないというとこがポイントみたい。