java list转成数组,java中数组转成list

  java list转成数组,java中数组转成list

  如何解决写爬虫IP受阻的问题?立即使用。

  相关:《Java视频教程》

  在Java中,经常有需要列表和数组之间转换的场景。那么list怎么变成数组呢?下面这篇文章为你介绍。

  可以使用List的toArray()或toArray(T[] a)方法将List转换为数组。

  List转换成数组

  可以将列表转换成数组来调用toArray方法,

  有两个重载方法,

  通常,使用带有泛型参数的第二种方法:

  object[]to array();

  T T[]to array(T[]a);2.1.无参数toArray方法

  object[]to array();该方法直接将列表转换为Object[]数组。

  Java初学者喜欢用这种方法,

  没有参数使用方便,

  并且在代码编译中没有错误,

  使用的错误代码示例如下:

  ListString strList=new ArrayList();

  strlist . add( list-a );

  strlist . add( list-b );

  String[]str array=(String[])strlist . to array();结果一运行,就直接报告错误,

  无法将对象[]转换为字符串[]:

  线程“main”中出现异常java.lang.ClassCastException:

  【ljava . lang . object;无法转换为[ljava . lang . string;正确的使用代码如下:

  ListString strList=new ArrayList();

  object[]str array=strlist . to array();得到了一个通常无用的对象[]。

  2.2.支持泛型的toArray方法

  T T[]to array(T[]a);该方法接收T类型的数组,

  请注意,基本类型不能用作泛型参数。

  如果使用int[]类型数组,

  需要用Integer[]替换int[]。

  使用的示例代码如下:

  ListString strList=new ArrayList();

  strlist . add( list-a );

  strlist . add( list-b );

  String[]str array=strlist . to array(new String[strlist . size()]);2.3.toArray方法入参的数组大小

  对于下面的代码,

  分析初始化后的字符串数组的大小,

  以及列表strList.size()的大小,

  对返回值的不同影响:

  ListString strList=new ArrayList();

  strlist . add( list-a );

  strlist . add( list-b );

  String[] strArray1=新字符串[size];

  string[]strarray 2=strlist . to array(strarray 1);strList.size()

  现在设置大小=0,

  小于strList.size()=2,

  代码修改如下:

  String[] strArray1=新字符串[0];返回的strArray2和strArray1不是同一个对象。

  2.3.2.size=strList.size()

  现在设置size=strList.size(),

  代码修改如下:

  String[]strarray 1=new String[strlist . size()];返回的strArray2和strArray1是同一个对象。

  所以下面两段代码是等价的,

  得到strArray是我们预期的结果:

  String[]str array=strlist . to array(new String[strlist . size()]);

  String[]strArray=new String[strlist . size()];

  strlist . toarray(strArray);strList.size()

  现在设置size=strList.size() 1,

  代码修改如下:

  String[] strArray1=新字符串[strlist . size()1];返回的strArray2和strArray1是同一个对象,

  但是数组的最后一个元素为空,

  如果数组中的元素比列表中的多,

  紧接在列表被复制之后的数组末尾被设置为空,

  即strArray1[strList.size()]=null,

  这有助于调用者确定数组的真实长度,

  如果用strList.size() 2初始化数组,

  数组的倒数第二个元素为空。

  更多编程知识请访问:编程教学!以上是java中如何将list转换成array。更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: