`
stta04
  • 浏览: 112850 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

如何使用List.toArray()转换为数组对象

 
阅读更多
在做多目录索引时,要动态传入new出来的IndexSearcher的数组,发现我采用的Lucene2.3版本里的MultiSearcher并没有传入list集合的接口。2.4版本就不太清楚。
在程序中,我们往往习惯使用List这种集合类,但是程序中却要求需要传递一个数组,我们可以这样实现:

  1. Long [] l = new Long[list.size()];
  2. for(int i=0;i
  3. l[i] = (Long)list.get(i);
这样的代码看上去似乎繁琐了一些,实际上List已经为我们提供了toArray()方法,但是如果使用时不注意,就会很容易发生ClassCastException,其产生的原因可以看下面的代码:
  1. Listlist=newArrayList();
  2. list.add(newLong(1));
  3. list.add(newLong(2));
  4. list.add(newLong(3));
  5. list.add(newLong(4));
  6. Long[]l=(Long[])list.toArray();//这个语句会出现ClassCastException
  7. for(inti=0;i
  8. System.out.println(l[i].longValue());
在第6个语句会抛出
ClassCastException异常。
其实,它的使用很简单,处理方式如下面代码:

  1. Long[]l=(Long[])list.toArray(new Long[list.size()]);
注意的是:你要是传入的参数为9个大小,而list里面有5个object,那么其他的四个很可能是null , 使用的时候要注意

.
分享到:
评论

相关推荐

    list.toArray方法

    NULL 博文链接:https://jiaguwen123.iteye.com/blog/1679345

    关于List.ToArray()方法的效率测试

    主要介绍了关于List.ToArray()方法的效率测试的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下

    Java ArrayList.toArray(T[]) 方法的参数类型是 T 而不是 E的原因分析

    主要介绍了Java ArrayList.toArray(T[]) 方法的参数类型是 T 而不是 E的原因分析的相关资料,需要的朋友可以参考下

    json-to-array:将对象转换为数组

    json到数组 将对象转换为数组例子var toArray = require ( 'json-to-array' ) ;console . log ( toArray ( { name : 'luckydrq' , age : 30 } ) ) ; // [[name, 'luckydrq'], [age, 30]]现实世界中的用法您可以将...

    C#中List和数组之间转换的方法

    本文实例讲述了C#中List和数组之间转换的方法。分享给大家供大家参考。具体分析如下: 一、List转数组 (从List转到string[]) List<string> listS=new List(); listS.Add(str); listS.Add(hello); string[] str=...

    anmo_mybatis_generator.zip

    tableNames = JSON.parseArray(tables).toArray(tableNames); byte[] data = sysGeneratorService.generatorCode(tableNames); response.reset(); response.setHeader("Content-Disposition", "attachment;...

    js对日期操作

    Date.prototype.toArray 日期分割为数组 Date.prototype.DatePart 取日期的部分信息 Date.prototype.MaxDayOfDate 取日期所在月的最大天数 Date.prototype.WeekNumOfYear 判断日期所在年的第几周 StringToDate 字符...

    js日期时间格式验证,时间比较

    Date.prototype.toArray 日期分割为数组 Date.prototype.DatePart 取日期的部分信息 Date.prototype.MaxDayOfDate 取日期所在月的最大天数 Date.prototype.WeekNumOfYear 判断日期所在年的第几周 StringToDate 字符...

    Nesne:对象,对象操作| GitHub镜像

    执照麻省理工学院执照原料药.toArray .toArray( Object ) 将对象或参数转换为数组 let arr = Nesne . toArray ( { a : 1 , b : 2 , c : 3 } ) console . log ( arr ) // [1, 2, 3]。结合.combine( Object , ...

    TextBox拼音检索(textBox重新封装)源码

    TextBox控件重新封装(源代码网上找的),自己重新封装方便使用; 使用步骤: 1,加载dll文件;... return list.ToArray(); } 4,数据源绑定: spellSearchBoxExSS1.SpellSearchSource = GetSpellBoxSource(dt);

    leetcode2-node-leetcode:Leetcode辅助库,例如createList,Treefromarray

    将列表转换为数组。 通常用于调试。 var List = require ( 'leetcode' ) . List ; // { val: 1, next: { val: 2, next: { val: 3, next: null } } } var l = List . create ( [ 1 , 2 , 3 ] ) ; // [1, 2, 3] ...

    Java编码规范总结

    5.错误用法 - 集合转换为数组元素时发生的类型转换错误。 修复建议:使用c.toArray(new String[c.size()])。 6.不良实践 - 方法返回boolean类型返回了null。 7.错误用法 - "."用作正则表达式。 修复建议:...

    List_for_FP:用于函数编程的列表数据结构

    rest $List.prototype.length $List.prototype.toString $List.prototype.reverse $List.prototype.slice $List.prototype.ref $List.prototype.append $List.prototype.toArray $List.prototype.forEach $List....

    Linq OrderBy

    Dynamic Linq SortBy

    to-array.js:将基元和对象(普通或类似数组)转换为 Node.js 和浏览器的合理数组表示

    将基元和对象(普通或类似数组)转换为和浏览器的合理数组表示。 例子 数组 ... 数组 toArray([1, 2, 3]); //=> [1, 2, 3] 未定义/空...数组 toArray(void 0 || null) //=> [] 字符串 ... 数组 toArray('id'); /...

    keywords-array:将一串单词转换为数组

    将一串单词转换为数组。 安装 $ npm install keywords-array 例子 var toArray = require ( '../' ) ; // by default splits on spaces or commas var wordArray = toArray ( 'this is, all, a string' ) ; // =>...

    mongoq:像这样使用 mongoDB

    蒙哥Q 像这样使用 mongoDB: mongoq("testdb").collection("users").find().toArray().done( function(docs){} ).fail( function(err){} ) ; 基于特征标准【连接字符串格式】【连接字符串】 完整的方法支持可链接的...

    shp转换为KML+源代码

    shp2kml+源代码 public byte[] ToKML() { MemoryStream ms = new MemoryStream(); StreamWriter sw = new StreamWriter(ms); XmlTextWriter kml = new XmlTextWriter(sw);... return ms.ToArray(); }

Global site tag (gtag.js) - Google Analytics