当前位置: 代码迷 >> 综合 >> HashMap Collections.sort() Collections.binarySearch();
  详细解决方案

HashMap Collections.sort() Collections.binarySearch();

热度:34   发布时间:2024-02-23 19:11:26.0

HashMap 常用方法

map.put() map.remove() map.get() map.size() map.keySet()

public static void main(String[] args) {
    Map map = new HashMap();Student s1 = new Student(1, "黎明", 24, 98);//键-值方式储存map.put("Jack", s1);map.remove("Jack");// remove()不是将数据删除了 而是将对数据的引用删除了System.out.println("Jack同学的信息是: ");System.out.println(map.get("Jack"));//元素个数System.out.println(map.size());//返回键的集合System.out.println("所有的key值是: ");for (Object obj : map.keySet()) {
    System.out.println(obj);// 利用了子类重写父类方法}//返回值的集合System.out.println("所有的value值是: ");for (Object obj : map.values()) {
    System.out.println(obj);// 利用了子类重写父类方法}

Collections.sort()

public class StudentTest {
    
public static void main(String[] args){
    Collections.sort(list);// 学生类默认按照成绩+年龄 排序
}}public class Student implements Comparable<Student> {
    // 重写@Overridepublic int compareTo(Student o) {
    // TODO Auto-generated method stub// 学生类排序的标准 学号|姓名|年龄|成绩先按成绩排序  同样成绩再按年龄排序if( o.getScore() > this.getScore()) {
    return 1;}else if( o.getScore() < this.getScore()) {
    return -1;}else {
    return o.getAge() - this.getAge();if(o.getAge()>this.getAge()) {
    return 1;}else if(o.getAge()< this.getAge()) {
    return -1;}else {
    return 0;}}
}

Collections.binarySearch();

public class StudentTest {
    
public static void main(String[] args){
    int index = Collections.binarySearch(list, new Student("黎明"));if (index>=0){
    System.out.println("输出位置:"+index);}else{
    System.out.println("没有该同学");}System.out.println("----------------------");
}
}	
public class Student implements Comparable<Student> {
    	// 字符串的操作比较String name1 = this.getName();String name2 = o.getName();return name1.compareTo(name2);// compareTo() 返回字符串的差值// "ABC" "ABC" 差值0 return 0// "ABC" "ABD" 差值-1 return 负数 反之 正数// "ABC" "XBB" 第一个不同项的差值 + | -
}
  相关解决方案