码迷,mamicode.com
首页 > 编程语言 > 详细

4.19Java.util.Arrays类

时间:2021-04-21 12:15:14      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:冒泡排序   super   二分法   str   位置   nbsp   stat   目标   load   

4.19Java.util.Arrays类

JDK提供的工具类

Arrays类包含的内容

  • 排序

  • 查找

  • 填充

  • 打印内容

  • ...


打印内容
package com.array;
?
import java.util.Arrays;
?
/**
* 测试Java.util.Arrays工具类的使用
* @author Lucifer
*/
public class TestArrays {
   public static void main(String[] args) {
?
       int[] a = {10,20,30};
?
       System.out.println(a); //返回的是哈希码---地址的编码
?
       System.out.println(Arrays.toString(a)); //返回数组内容,而且和之前的Object.toString是两码事,Arrays.toString是静态的方法,帮助我们打印处内容---源码
  }
}
排序---方法:Arrays.sort();
package com.array;
?
import java.lang.reflect.Array;
import java.util.Arrays;
?
/**
* 测试Java.util.Arrays工具类的使用
* @author Lucifer
*/
public class TestArrays {
   public static void main(String[] args) {
       
       /*Arrays排序方法*/
       //冒泡排序????直接上方法
       int[] b = {99,88,100,200,3291,485};
?
       Arrays.sort(b);
?
       System.out.println(Arrays.toString(b));
  }
}

数组元素是引用类型的排序(Comparable接口的应用)---用到排序需要实现到Comparable接口

自定义类,根据年龄排序

package com.array;
?
import java.util.Arrays;
?
/**
* 测试数组元素引用数据类型的排序(涉及到实现的接口)
* @author Lucifer
*/
public class TestArraysInterface {
   public static void main(String[] args) {
?
  }
}
?
/*定义数组元素类*/
class Man implements Comparable{
   int age;
   int id;
   String name;
?
   /*类的构造器*/
   public Man(int age, String name){
       super();
       this.age = age;
       this.name = name;
  }
?
   /*toString方法*/
   public String toString(){
       return this.name;
  }
   /*
   这个是Object类里面的toString方法,说明Object实现了Comparable接口
    */
?
   /**
    * 重写接口的抽象方法
    * @param o
    * @return
    */
   @Override
   public int compareTo(Object o){
       Man man = (Man) o; //强制转型,目标对象
       if (this.age < man.age){
           return -1;
      }
?
       if (this.age > man.age){
           return 1;
      }
?
       return 0;
  }
}

容器章节会详细说明

查找---二分法查找
package com.array;
?
import java.lang.reflect.Array;
import java.util.Arrays;
?
/**
* 测试Java.util.Arrays工具类的使用
* @author Lucifer
*/
public class TestArrays {
   public static void main(String[] args) {
?
       /*Arrays打印内容方法*/
       int[] a = {10,20,30};
?
       System.out.println(a); //返回的是哈希码---地址的编码
?
       System.out.println(Arrays.toString(a)); //返回数组内容,而且和之前的Object.toString是两码事,Arrays.toString是静态的方法,帮助我们打印处内容---源码
?
       /*Arrays排序方法*/
       //冒泡排序????直接上方法
       int[] b = {99,88,100,200,3291,485};
?
       Arrays.sort(b);
?
       System.out.println(Arrays.toString(b));
?
       /*Arrays二分法查找*/
       //方法---binarySearch
       System.out.println(Arrays.binarySearch(a,30));
       /*
       查询a数组里面的30这个数在哪个索引位置
        */
?
       //如果查询的元素不在返回-1
       System.out.println(Arrays.binarySearch(a,-30));
  }
}

 

4.19Java.util.Arrays类

标签:冒泡排序   super   二分法   str   位置   nbsp   stat   目标   load   

原文地址:https://www.cnblogs.com/JunkingBoy/p/14678605.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!