java自定义一个对象,对象中包含一个币种字段,不同币种权重值不同,该对象的list集合根据币种自定义的权重值实现排序的代码
时间: 2023-05-22 08:03:08 浏览: 78
可以使用Collections.sort()方法,并传入自定义的Comparator对象作为参数来实现根据币种自定义的权重值排序。Comparator对象中需要实现compare()方法,比较两个对象的币种权重值大小。以下是代码示例:
```
public class Currency{
private String name;
private double weight;
public Currency(String name, double weight){
this.name = name;
this.weight = weight;
}
public String getName(){
return name;
}
public double getWeight(){
return weight;
}
}
public class CurrencyComparator implements Comparator<Currency>{
@Override
public int compare(Currency c1, Currency c2){
if(c1.getWeight() < c2.getWeight()){
return -1;
}else if(c1.getWeight() > c2.getWeight()){
return 1;
}else{
return 0;
}
}
}
public static void main(String[] args){
List<Currency> list = new ArrayList<>();
list.add(new Currency("USD", 1.0));
list.add(new Currency("CNY", 0.2));
list.add(new Currency("JPY", 0.01));
Collections.sort(list, new CurrencyComparator());
for(Currency c: list){
System.out.println(c.getName());
}
}
```
输出为:JPY, CNY, USD
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)