java-集合和数组的转换


1、数组变集合的方法:Arrays.asList()
返回的集合,不能进行增、删操作.抛出异常:UnsportedIOperationException

思想:
通过操作集合的方式来操作数组.

2、集合变数组:Collection的toArray()方法,传一个集合对象,长度小于集合的size,则系统自动新声明一个集合.所以数组的长度最好跟集合长度一致.

增强for循环语句,需要有被遍历的目标(collection或数组).

import java.util.*;
class ArraysDemo
{
 public static void main(String[] args)
 {
  arrayToList();
  listToArray();
 }

 public static void arrayToList()
 {
  String [] str = {"abc", "def", "cf"}; //引用数据类型,将数组中的每个原始存入List.
  //int[] str = {1,2,3};  //基本数据类型的数组转为List,将整个数组作为一个元素存入List,所以输出的size为1;
  //List list = Arrays.asList(str);
  //System.out.println(list.size());
  List <String> list = Arrays.asList(str) ;
  //list.add("cd");  //错误,不能增加删除,因为数组的长度是固定的.抛出异常:UnsportedIOperationException
  for (Iterator it = list.iterator(); it.hasNext(); )
  {
   System.out.println(it.next());
  }
 }

 public static void listToArray()
 {
  ArrayList <String> list = new ArrayList<String>();
  list.add("aa");
  list.add("bb");
  list.add("cc");
  String [] str = list.toArray(new String[list.size()]);  //参数:数组对象的长度,如果比list的size小,JVM需要重新声明一个数组,所以长度最好跟list的size保持一致. 超过list的size,超出的元素均为null
  for (String s : str)
  {
   System.out.println(s);
  }
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值