JAVA List和数组的相互转换

在开发中经常会需要将字符串数组转换成List,或者是相反的操作。可以通过List本身的方法进行转换。

通过 toArray()方法将List转成数组

通过asList()方法将数组转成List。

		List<String> stringList = new ArrayList<String>();
		stringList.add("1001");
		stringList.add("1002");
		stringList.add("1003");
		stringList.add("1004");
		stringList.add("1005");
			
		
//		String[] stringArray = (String[]) stringList.toArray();
		String[] stringArray = stringList.toArray(new String[stringList.size()]);
		System.err.println("stringList.toArray");
		for (String string: stringArray) {
			System.err.println(string);
		}
		stringArray[3] = "1013";
		stringArray[4] = "1015";
		stringList = Arrays.asList(stringArray);
		System.out.println("Arrays.asList");
		for (String string: stringList) {
			System.out.println(string);
		}

使用toArray的时候,不能通过cast进行强制类型转换,虽然语法上不会报错,但是运行时会报ClassCastException错误

java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;

最终输出如下

stringList.toArray
1001
1002
1003
1004
1005
Arrays.asList
1001
1002
1003
1013
1015

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值