你的位置:首页 > Java教程

[Java教程]类Arrays


 1 package p2; 2  3 import java.util.Arrays; 4 import java.util.List; 5  6 public class ArraysDemo { 7  8   public static void main(String[] args) { 9     /*10      * Arrays:集合框架的工具类。里面的 方法都是静态的 。11     */12     demo3();13 14   }15 16   public static void demo3() {17     /*18      *如果数组中的元素是对象,那么转成集合时,直接将数组中的元素作为集合中的元素进行集合存储。19      *20      *如果数组中的元素是基本类型数值,那么会将该数组作为集合中的元素进行存储。21      *基本数据类型: byte short int long,float double,boolean,char22     */23     24     int[] arr = {31,11,51,61};25     List<int[]> list = Arrays.asList(arr);26     System.out.println(list); //结果:[[I@659e0bfd]27   }28 29   public static void demo2() {30     /*31      * 重点 List aslist(数组)  将数组转成集合32      * 33      * 好处:其实可以使用集合的方法操作数组中的元素。34      * 注意:数组的长度是固定的,所以对于集合的增删方法是不可以使用的;,否则会发生UnsupportedOperationException。35     */36     String[] arr = {"abc","haha","xixi"};37     38     //判断数组是否含有 xixi;39     boolean b = myContains(arr,"xixi");40     System.out.println("contains:"+b);41     //转化为列表,再判断就方便好多了42     List<String> list = Arrays.asList(arr);43     boolean b1 = list.contains("xixi");44     System.out.println("contains:"+b1);45     46 //    list.add("sfsf");//UnsupportedOperationException47     48     System.out.println(list);49   }50 51   public static boolean myContains(String[] arr, String key) {52     for (int i=0; i<arr.length; i++){53       if (arr[i].equals(key))54         return true;55     }56     57     return false;58   }59   /*60    * 结果:61    * contains:true62     contains:true63     [abc, haha, xixi]64   */65 66   public static void demo1() {67     int[] arr = {3,1,5,6,3,6};68     System.out.println(arr);69     System.out.println(Arrays.toString(arr));70   }71   /* 结果:72    * [I@659e0bfd73     [3, 1, 5, 6, 3, 6]74   */75 76   77   // toString 的 经典实现78   public static String myToString(int[] a)79   {80     int iMax = a.length-1;81     if (iMax == -1)82       return "[]";83     84     StringBuilder b = new StringBuilder();85     b.append("[");86     for (int i=0; ; i++)87     {88       b.append(a[i]);89       if (i == iMax)90         return b.append("]").toString();91       b.append(",");92     }93   }94 95 }