JavaSE 09:API_常用类

API_常用类

==与equals

package day2;
public class api {
    public static void main(String[] args) {
        String str0=new String("123");
        String str1=new String("123");
        //==引用数据类型的对象的地址是否相等。
        System.out.println(str0==str1);//false
        //判断值是否相等
        System.out.println(str0.equals(str1));//true
        String str2="12345";
        String str3="12345";
        //同一个对象
        System.out.println(str2==str3);//true
        System.out.println(str2.equals(str3));//true
        int a=12;
        int b=12;
        //基本数据类型没有equals方法
        System.out.println(a==b);//true
        Integer i0=new Integer(12);
        Integer i1=new Integer(12);
        System.out.println(10==i1);//false
        System.out.println(i0.equals(i1));//true
        Integer i2=12;
        Integer i3=12;
        System.out.println(i2==i3);//true
        System.out.println(i2.equals(i3));//true
    }
}

排序Arrays.sort ,comparable 与comparator

package Day3;
import java.util.Arrays;
public class Test {
    public static void main(String[] args) {
        int array[]=new int[]{12,59,36,78,12,74,36,2,23};
        Arrays.sort(array);//排序
        System.out.println(Arrays.toString(array));
        Integer []arr={18,25,36,798,24,1};
        Arrays.sort(arr);//排序 实现了comparable接口
        System.out.println(Arrays.toString(arr));
        String str[]={"b","x","a","v"};
        Arrays.sort(str);//排序 实现了comparable接口
        System.out.println(Arrays.toString(str));
    }
}

comparable

package Day3;
//student实现了comparable接口
public class Student implements Comparable<Student>{//泛型
private String name;
private int age;
    public Student(String name,int age) {
        this.name = name;
        this.age=age;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
//重写compareTo方法
    @Override
    public int compareTo(Student o) {
        return this.age-o.age;//小到大
    }
}
package Day3;
import java.util.Arrays;
public class Test {
    public static void main(String[] args) {
        /*int array[]=new int[]{12,59,36,78,12,74,36,2,23};
        Arrays.sort(array);//排序
        System.out.println(Arrays.toString(array));
        Integer []arr={18,25,36,798,24,1};
        Arrays.sort(arr);//排序 实现了comparable接口
        System.out.println(Arrays.toString(arr));
        String str[]={"b","x","a","v"};
        Arrays.sort(str);//排序 实现了comparable接口
        System.out.println(Arrays.toString(str));*/
        Student stu[]=new Student[3];
        stu[0]=new Student("abc",21);
        stu[1]=new Student("lyh",20);
        stu[2]=new Student("cjr",22);
        Arrays.sort(stu);//调用该方法时调用compareTo方法
        System.out.println(Arrays.toString(stu));
    }
}

package Day3;
//student实现了comparable接口
public class Student implements Comparable<Student>{//泛型
private String name;
private int age;
    public Student(String name,int age) {
        this.name = name;
        this.age=age;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
//重写compareTo方法
    @Override
    public int compareTo(Student o) {
        return this.name.compareTo(o.name);//小到大字符串的比较
    }
}
package Day3;
import java.util.Arrays;
public class Test {
    public static void main(String[] args) {
        /*int array[]=new int[]{12,59,36,78,12,74,36,2,23};
        Arrays.sort(array);//排序
        System.out.println(Arrays.toString(array));
        Integer []arr={18,25,36,798,24,1};
        Arrays.sort(arr);//排序 实现了comparable接口
        System.out.println(Arrays.toString(arr));
        String str[]={"b","x","a","v"};
        Arrays.sort(str);//排序 实现了comparable接口
        System.out.println(Arrays.toString(str));*/
        Student stu[]=new Student[3];
        stu[0]=new Student("abc",21);
        stu[1]=new Student("lyh",20);
        stu[2]=new Student("cjr",22);
        Arrays.sort(stu);//调用该方法时调用compareTo方法
        System.out.println(Arrays.toString(stu));
    }
}

Comparator

package Day3;
//student实现了comparable接口
public class Student {//泛型
private String name;
private int age;
    public Student(String name,int age) {
        this.name = name;
        this.age=age;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
//重写compareTo方法
}
package Day3;
import java.util.Arrays;
import java.util.Comparator;

class my implements Comparator<Student>{

    @Override
    public int compare(Student o1, Student o2) {
        return   o1.getName().compareTo(o2.getName());//小到大
    }
}
public class Test {
    public static void main(String[] args) {
        /*int array[]=new int[]{12,59,36,78,12,74,36,2,23};
        Arrays.sort(array);//排序
        System.out.println(Arrays.toString(array));
        Integer []arr={18,25,36,798,24,1};
        Arrays.sort(arr);//排序 实现了comparable接口
        System.out.println(Arrays.toString(arr));
        String str[]={"b","x","a","v"};
        Arrays.sort(str);//排序 实现了comparable接口
        System.out.println(Arrays.toString(str));*/
        Student stu[]=new Student[3];
        stu[0]=new Student("abc",21);
        stu[1]=new Student("lyh",20);
        stu[2]=new Student("cjr",22);
        Arrays.sort(stu,new my());//调用该方法时调用compareTo方法
        System.out.println(Arrays.toString(stu));
    }
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值