| 
          
         | 
         
          
          
          本文参考: 
《Java面向对象编程》,作者:孙卫琴 
《漫画Java编程》,作者:孙卫琴,杜聚宾 
 
集合和数组都用来存放多个元素,它们之间可以通过特定的方式互相转换。 
(1)把数组转换为集合 
java.util.Arrays类是一个数组实用类,它的asList()静态方法能够把数组转换成一个List对象,例如:Integer[] array={11,22,33}; 
List<Integer> list=Arrays.asList(array);  //把数组转换为List   |  
  大多数集合都有以下形式的构造方法,该构造方法在创建新集合的时候,会把参数c指定的集合中的元素复制到新集合中: 
 
HashSet(Collection<? extends E> c) 
TreeSet(Collection<? extends E> c) 
ArrayList(Collection<? extends E> c) 
LinkedList(Collection<? extends E> c) |  
  因此,在通过Arrays.asList()方法得到了一个List对象后,还可以把它转换为其他类型的集合。例如: 
 
Integer[] array={11,22,33}; 
List<Integer> list=Arrays.asList(array);  ////把数组转换为List 
 
List<Integer> arrayList=new ArrayList<Integer>(list);  //转换为ArrayList 
Set<Integer> hashSet=new HashSet<Integer>(list);  //转换为HashSet |  
  (2)把集合转换为数组 
java.util.Collection接口中定义了toArray()方法,能把集合转换为数组,它有两种重载形式: 
 
	Object[] toArray():返回Oject[]类型的数组。 
	<T> T[] toArray(T[] a):返回泛型标记<T>指定类型的数组。 |  
  以下代码分别通过两种toArray()方法来返回数组: 
 
List<Integer> list=new ArrayList<Integer>(); 
list.add(11); 
list.add(22); 
list.add(33); 
 
Object[] array1=list.toArray();  //返回Object[]类型数组 
Integer[] array2=list.toArray(new Integer[0]);  //返回Integer[]类型数组 |  
  对于“list.toArray(new Integer[0])”,参数“new Integer[0]”仅仅用来指定返回数组的类型,在这里表明toArray()方法将返回一个Integer[]类型的数组。 
 
 
 
程序猿的技术大观园:www.javathinker.net 
 
 
          
          
          
            
  
            [这个贴子最后由 admin 在 2022-03-15 14:48:49 重新编辑]
          
          
         | 
        
      
 
网站系统异常
 
 
    
     | 系统异常信息 | 
     
    
     
       
         Request URL: 
http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=322&pages=4
  
java.lang.NullPointerException
         
  
如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员。
       
      | 
     
 
 |