`
duanfei
  • 浏览: 733772 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

(转)array与ArrayList的转换

    博客分类:
  • JAVA
 
阅读更多

由于java平台API的很大一部分都是在集合框架建立之前设计的,因此有时候需要在传统的数组与现代的
集合之间进行转换。

*如果你有一个数组,就需要将它转化为一个集合,Arrays.asList包装器能够实现这个目的,例如:
String[] values=...;
HashSet<String> staff=new HashSet<String>(Arrays.asList(values));

*反过来,如果要从集合得到数组,操作起来就稍微麻烦一些。当然,你也可以直接使用toArray方法:
 Object[] values=staff.toArray();
 但是该方法运行的结果是得到一个Object的数组。即使知道集合包含一组具体类型的对象,也不能使用
 类型转换:
 String[] values=(String[])staff.toArray();//error!
 toArray方法返回的数组是一个Object[]数组,你无法改变它的类型。相反,你必须使用toArray方法的
某种变体,为它赋予一个长度为0的你要使用的类型的数组。然后,返回的数组就是与该类型相同的数组了。
 String[] values=staff.toArray(new String[0]);
 如果你愿意,你还可以构建一个指定大小的数组:
 staff.toArray(new String[staff.size()]);
 在这种情况下,并没有创建任何新的数组。

分享到:
评论

相关推荐

    C# Array和ArrayList,List区别

    #### 四、Array、ArrayList 与 List 之间的转换 **Array 转换为 ArrayList** 可以使用 `ToArray` 方法将 `ArrayList` 转换为 `Array`: ```csharp ArrayList al = new ArrayList { 1, 2, 3 }; int[] arr = (int[]...

    c#数据结构之array,arraylist,hashtable,dictionary

    C#数据结构之Array、ArrayList、Hashtable、Dictionary C#中有多种数据结构可以用来存储和管理数据,今天我们将讨论四种常用的数据结构:Array、ArrayList、Hashtable和Dictionary。这些数据结构都是_Collections_...

    java List、Set与Array之间的相互转换

    - **Set转Array**: 与List相似,你可以先将Set转换为List,再将List转换为Array: ```java Set&lt;String&gt; set = ...; List&lt;String&gt; list = new ArrayList(set); String[] array = new String[list.size()]; list...

    Java Array与ArrayList区别详解

    9. **类型转换与异常处理**: - ArrayList在运行时进行类型检查,如果尝试获取元素时类型不匹配,会抛出异常。某些情况下,容器类可以在未显式转换的情况下工作,尤其是与字符串相关的操作。 10. **ArrayList扩容...

    C#中Array与ArrayList用法及转换的方法

    - `ToArray()`:将ArrayList转换为数组,需要指定目标类型,如`(Int32[])List.ToArray(typeof(Int32))`。 - `IsSynchronized`:判断ArrayList是否为线程安全。 - `Synchronized()`:创建ArrayList的线程安全版本...

    《C#入门经典》第十章Array和ArrayList的相关问题!!!问题都在注释里!.docx

    在C#编程中,Array和ArrayList是两种不同的数据结构,分别代表固定大小的数组和动态大小的列表。本文将深入探讨这两个概念,并解答在提供的代码片段中遇到的问题。 首先,Array是C#中的基本类型,它是一个固定大小...

    Android中ArrayList和数组相互转换

    ArrayList继承自Java的List接口,提供了toArray()方法,可以直接将ArrayList转换为数组。在示例代码中,我们可以看到两种转换方式: 1. 基于循环的转换: ```java String[] array = new String[size]; for (int i =...

    C# 中 Array和 ArrayList详解及区别

    // 将ArrayList转换为Array ``` 四、Array与ArrayList的区别 1. 实例化方式:Array在声明时必须初始化大小,ArrayList则可以在声明后不立即初始化。 2. 存储类型:Array存储同构对象,ArrayList存储异构对象。 3. ...

    C#_集合类_Array,Arraylist,List,Hashtable,Dictionary,Stack,Queue_学习资料

    本文主要探讨了几个常用的集合类,包括Array、ArrayList、List、Hashtable、Dictionary, TValue&gt;、Stack和Queue,以及它们的特点和应用场景。 1. **数组**(Array):数组是最基本的数据结构,它是一个固定大小的...

    C#中的集合示例(Array,ArrayList,Hashtable,List)

    与ArrayList相比,List更加安全,因为它在编译时就知道了元素的类型。以下是一个List的示例: ```csharp List&lt;int&gt; numbersList = new List&lt;int&gt; { 1, 2, 3, 4, 5 }; numbersList.Add(6); // 添加元素 int first...

    Array和Collection相互转换以及copy深度的小测

    3. 自定义转换:如果你需要转换成其他类型的`Collection`(如`ArrayList`或`LinkedList`),可以通过迭代遍历数组并调用`add()`方法实现。 **从Collection转换到Array** 1. **toArray()**: `Collection`接口提供了...

    详解Java如何在Array和List之间进行转换.rar

    本篇将深入探讨Java中如何实现Array与List之间的相互转换。 一、Array到List的转换 1. 使用Arrays类的asList()方法 Java标准库中的Arrays类提供了一个asList()方法,可以将数组直接转换为ArrayList类型的List。...

    《C#入门经典》第十章Array和ArrayList的相关问题!!!问题都在注释里!.pdf

    5. **ArrayList 与 List**:`ArrayList` 是非泛型集合,可存储任何类型的对象,但不支持类型安全。`List&lt;T&gt;` 是泛型集合,提供类型安全。在示例中,`ArrayList` 用于动态存储不同类型的动物实例,但它的操作不如 `...

    Java ArrayList 数组之间相互转换

    例如,当你从数据库查询结果获取ArrayList,然后需要将其传递给一个只接受数组的方法时,就需要将ArrayList转换为数组。反之,如果你有一个数组,但希望利用ArrayList的便利性(如动态增长)进行操作,那么数组转换...

    java ArrayList的使用与分析

    - **ToArray 方法**:将 ArrayList 转换为数组:`Object[] array = list.toArray();` 4. **ArrayList 与数组的转换** - **转换为数组**:如示例所示,可以使用 `toArray` 方法将 ArrayList 转换为数组:`Int32[] ...

    Java 在 Array 和 Set 之间进行转换的示例.rar

    - **Arrays.asList()**:首先,可以将数组转换为ArrayList,然后利用ArrayList的构造函数创建一个Set。这是因为Set接口没有提供直接从数组创建Set的方法。例如: ```java String[] array = {"Element1", "Element...

    数组和list相互转换

    接下来,我们将详细介绍如何在Java语言中实现数组与列表之间的相互转换。 ### 数组转列表 #### Java标准库转换方法 Java提供了强大的标准库支持,可以方便地完成数组到列表的转换。具体实现方式如下: ```java ...

    ArrayList类操作程序实例

    2. `toArray(T[] array)`:将ArrayList转换为指定类型的数组。 九、ArrayList的线程安全性 ArrayList不是线程安全的,这意味着在多线程环境下,对ArrayList的操作需要额外的同步措施,如使用`Collections....

    解析C#中[],List,Array,ArrayList的区别及应用

    Array 和 ArrayList 是通过存储 object 实现任意类型的,所以使用时要转换。 应用示例 代码如下:using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; ...

Global site tag (gtag.js) - Google Analytics