gpt4 book ai didi

java - 订购枚举值

转载 作者:搜寻专家 更新时间:2023-11-01 01:06:46 25 4
gpt4 key购买 nike

我想知道是否有任何方法可以为不同的类排序枚举。例如,如果我有一组固定的化学物质,它们以不同的方式与其他化学物质发生 react ,有些 react 强烈,有些 react 微弱。我基本上希望能够根据该组应该 react 的化学物质(即取决于类别)来改变它们的排列顺序。我知道我应该使用 Comparable,但我不确定该怎么做。如果我不够清楚,请发表评论,我会进一步解释。

谢谢。

public static enum Chem {
H2SO4, 2KNO3, H20, NaCl, NO2
};

所以我有类似的东西,而且我已经知道每种化学物质会如何与其他化学物质发生 react 。我只是想根据它会与之 react 的化学物质来安排化学物质。这就是我的全部。

最佳答案

实现不同的 Comparator(参见 http://docs.oracle.com/javase/6/docs/api/java/util/Comparator.html)

Comparator comparator1 = new Comparator<MyEnum>() {

public int compare(MyEnum e1, MyEnum e2) {
//your magic happens here
if (...)
return -1;
else if (...)
return 1;

return 0;
}
};

//and others for different ways of comparing them

//Then use one of them:
MyEnum[] allChemicals = MyEnum.values();
Arrays.sort(allChemicals, comparator1); //this is how you sort them according to the sort critiera in comparator1.

关于java - 订购枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10466606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com