java オブジェクトの顺序付けについてComparatorSample

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java オブジェクトの顺序付けについてComparatorSample相关的知识,希望对你有一定的参考价值。


class Employee {
	private String name;
	private Integer id;

	public Employee(String name, Integer id) {
		this.name = name;
		this.id = id;
	}

	public Integer getId() {
		return id;
	}

	public String getName() {
		return name;
	}
}

class CaseSample {
	public static void main(String[] args) {
		List<String> list = Arrays.asList("B", "a", "123", "c");
		// Collections.sort(list); // [123, B, a, c]
		Collections.sort(list, String.CASE_INSENSITIVE_ORDER); // [123, a, B, c]
		// Collections.sort(list, (s1, s2) -> s1.compareToIgnoreCase(s2));
		System.out.println(list);
	}
}

class RankRule implements Comparator<Employee> {
	public int compare(Employee obj1, Employee obj2) {
		return obj1.getId().compareTo(obj2.getId());
	}
}

class ComparatorSample {
	public static void main(String[] args) {
		Employee e1 = new Employee("aya", 20);
		Employee e2 = new Employee("kouta", 10);
		Employee e3 = new Employee("kazuyuki", 50);
		ArrayList<Employee> personnelDepartment = new ArrayList<>();
		personnelDepartment.add(e1);
		personnelDepartment.add(e2);
		personnelDepartment.add(e3);
		System.out.println("ArrayListのインデックス順での表示");
		print(personnelDepartment);
		System.out.println("RankRuleで定義したidの昇順での表示");
		Collections.sort(personnelDepartment, new RankRule());
		print(personnelDepartment);
	}

	public static void print(ArrayList<Employee> ary) {
		for (Employee obj : ary) {
			System.out.println(obj.getId() + " " + obj.getName());
		}
	}
}

以上是关于java オブジェクトの顺序付けについてComparatorSample的主要内容,如果未能解决你的问题,请参考以下文章

java オブジェクトの顺序付けについてBigDecimalSample

java オブジェクトの顺序付けについてComparableSample

java オブジェクトの顺序付けについてStringの大文字小文字を无视してソートする

Oracleシノニムについて

markdown オブジェクトの判定

javascript オブジェクトの生成Object.create(null)