当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

[简单]Arrays.asList转换int[]

发表于: 2014-05-26   作者:53873039oycg   来源:转载   浏览:
摘要:        看了博文:http://my.oschina.net/jasonli0102/blog/268988。才注意到: 写道 Arrays.asList() 对基本类型数组转换后list中只有一个元素      测试例子:      代码看

       看了博文http://my.oschina.net/jasonli0102/blog/268988。才注意到:

写道
Arrays.asList() 对基本类型数组转换后list中只有一个元素

     测试例子:

     代码看不懂的请自己调试

package com.huse.listtest;

import java.util.Arrays;
import java.util.List;

import org.apache.commons.lang.ArrayUtils;

public class ArraysAsListTest {
	public static void main(String[] args) {
		int[] b = new int[] { 1, 2, 3, 4, 5 };
		List listA = Arrays.asList(b);
		System.out.println(listA.getClass().getName());
		System.out.println(listA + "   ,size=" + listA.size());
		System.out.println(((int[])listA.get(0))[2]+"  ,size="+((int[])listA.get(0)).length);

		List<Integer> listB = Arrays.asList(ArrayUtils.toObject(b));
		System.out.println(listB.getClass().getName());
		System.out.println(listB + "   ,size=" + listB.size());

		Integer[] a2 = new Integer[] { 1, 2, 3, 4, 5 };
		List<Integer> listC = Arrays.asList(a2);
		System.out.println(listC.getClass().getName());
		System.out.println(listC + "   ,size=" + listC.size());
	}

}

 

   结果:

 

java.util.Arrays$ArrayList
[[I@15db9742]   ,size=1
3  ,size=5
java.util.Arrays$ArrayList
[1, 2, 3, 4, 5]   ,size=5
java.util.Arrays$ArrayList
[1, 2, 3, 4, 5]   ,size=5

   解释在:

 

   http://stackoverflow.com/questions/1467913/arrays-aslist-not-working-as-it-should

 

    http://stackoverflow.com/questions/12020886/how-arrays-aslistint-can-return-listint

写道
List<int> is not permitted in Java, when you use a int[] array as parameter for Arrays.asList it will consider it as the single element of a list instead of an array of int

    全文完

     

[简单]Arrays.asList转换int[]

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
如果在一个C++的程序中经常会用到int和string之间的互换,个人建议可以写成一个函数,下次用的时候
C++不像Java和C#一样在进行数据类型转换时直接调用一些类方法就可以了,使用起来很简单。   一个
这是我最近看到的一个面试题,还比较常见,于是用c, c++和python分别实现了 ip2int 和 int2ip, 因为我
以上是下面程序的结果 (int &)a 和(int)a [cpp] view plain copy float a = 1.0f; cout < <
a) int a;表示一个内存空间,这个空间用来存放一个整数(int); b) int* a;表示一个内存空间,这个
以前使用poi操作word 2007时候会遇到设置页面大小等问题,当时发现1cm≈567,为什么要这样一直不清楚
上一篇讲到了同步转换和异步转换的概念。通常情况下,大部分转换都是同步的,即收到一行就处理一行
  接下来学习一下Struts2简单的类型转换,Struts2基于ognl.jar实现了简单类型的数据转换。比如jsp
一、int 13h中断 对于1.44MB的软盘来讲,总共有两面(磁头号0和1),每面有80个柱面(0-79),每个
你也许是位乐于分享的技术人员,尽管你算不上什么技术高手,但是你都希望把自己所知道的通过博客与
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号