【java】javaSE知识梳理-java常用类
2021-05-28 11:06
标签:end mic 直接 定义 else get sed pareto price 比较器(内比较器) 自定义类,调用Comparable接口,重写compare方法 实例化1
实例化2
【java】javaSE知识梳理-java常用类 标签:end mic 直接 定义 else get sed pareto price 原文地址:https://www.cnblogs.com/cdan134/p/14783969.html比较器
自定义类比较,直接使用(跟常用类一样)
package javaUtil.comparable.method;
import javaLang.comparator.method.Goods;
import org.junit.Test;
import java.util.Arrays;
/**
* 比较器
* Comparable接口
* 常用类直接调用现成的compare即可实现
* 如果不满意现有的比较器,可以自己调用对应接口,重写对应方法
*
* @author ChenDan
* @create 2021-05-15
*/
public class Methods {
/**
*
* 自己定义类,将Comparable重写compare(obj)方法
* 重写规则:[] [0]
* public static
*/
@Test
public void test1() {
Goods[] goods = new Goods[5];
for (int i = goods.length - 1; i >= 0; i--) {
goods[4 - i] = new Goods(Character.toString((char) (‘A‘ + i)), i);
}
System.out.println(Arrays.toString(goods));
Arrays.sort(goods);
System.out.println(Arrays.toString(goods));
}
}package javaLang.comparator.method;
/**
* @author ChenDan
* @create 2021-05-16
* @desc
*/
public class Goods implements Comparable{
private String name;
private double price;
public Goods(){}
public Goods(String name, double price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
@Override
public String toString() {
return "Goods{" +
"name=‘" + name + ‘\‘‘ +
", price=" + price +
‘}‘;
}
@Override
public int compareTo(Object o) {
if(o instanceof Goods) {
Goods goods = (Goods) o;
if(this.price > goods.price) {
return 1;
}else if(this.price goods.price){
return -1;
}else{
return 0;
}
}
throw new RuntimeException("传入数据类型不一致!");
}
}
调用类比较
package javaLang.comparator.method;
import org.junit.Test;
import java.util.Arrays;
import java.util.Comparator;
import java.util.TreeSet;
/**
* 比较器
* Comparator接口
* 该接口不能直接调用,而是创建Comparator对象,重写compare方法
*
* @author ChenDan
* @create 2021-05-15
*/
public class Methods {
/**
*
文章标题:【java】javaSE知识梳理-java常用类
文章链接:http://soscw.com/index.php/essay/88651.html