java.util.Arrays类

 JDK提供的java.util.Arrays类,包含了常用的数组操作,方便我们日常开发。Arrays类包含了:排序、查找、填充、打印内容等常见的操作。

【示例7-10】打印数组

1 2 3 4 5 6 7 8 import java.util.Arrays; public class Test {     public static void main(String args[]) {         int[] a = { 12 };         System.out.println(a); // 打印数组引用的值;         System.out.println(Arrays.toString(a)); // 打印数组元素的值;     } }

      执行结果如图7-6所示:

java.util.Arrays类

图7-6 示例7-10运行效果图

菜鸟雷区

      此处的Arrays.toString()方法是Arrays类的静态方法,不是前面讲的Object的toString()方法。

【示例7-11】数组元素的排序

1 2 3 4 5 6 7 8 9 import java.util.Arrays; public class Test {     public static void main(String args[]) {         int[] a = {1,2,323,23,543,12,59};         System.out.println(Arrays.toString(a));         Arrays.sort(a);         System.out.println(Arrays.toString(a));     } }

      执行结果如图7-7所示:

java.util.Arrays类

图7-7 示例7-11运行效果图

【示例7-12】数组元素是引用类型的排序(Comparable接口的应用)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 import java.util.Arrays; public class Test {     public static void main(String[] args) {         Man[] msMans = { new Man(3"a"), new Man(60"b"), new Man(2"c") };         Arrays.sort(msMans);         System.out.println(Arrays.toString(msMans));     } }   class Man implements Comparable {     int age;     int id;     String name;       public Man(int age, String name) {         super();         this.age = age;         this.name = name;     }       public String toString() {         return this.name;     }       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;     } }

【示例7-13】二分法查找

1 2 3 4 5 6 7 8 9 10 11 import java.util.Arrays; public class Test {     public static void main(String[] args) {         int[] a = {1,2,323,23,543,12,59};         System.out.println(Arrays.toString(a));         Arrays.sort(a);   //使用二分法查找,必须先对数组进行排序;         System.out.println(Arrays.toString(a));         //返回排序后新的索引位置,若未找到返回负数。         System.out.println("该元素的索引:"+Arrays.binarySearch(a, 12));      } }

      执行结果如图7-8所示:

java.util.Arrays类

图7-8 示例7-13运行效果图

【示例7-14】数组填充

1 2 3 4 5 6 7 8 9 import java.util.Arrays; public class Test {     public static void main(String[] args) {         int[] a= {1,2,323,23,543,12,59};         System.out.println(Arrays.toString(a));         Arrays.fill(a, 24100);  //将2到4索引的元素替换为100;         System.out.println(Arrays.toString(a));     } }

      执行结果如图7-9所示:

java.util.Arrays类

图7-9 示例7-14运行效果图

上一篇:Android——平年润年天数判断


下一篇:.NET ------ 根据定义的枚举,展示下拉框