ArrayList和Array之间的转换
- ArrayList转Array
(1):使用ArrayList的toArray方法。
1)当ArrayList中存放的是引用类型时(例如String),成功
/**
* 使用了ArrayList的toArray方法 ,ArrayList里存放的是String(引用类型)
*/
@Test
public
void list2Array1() {ArrayList<String> arrayList = new ArrayList<String>();
arrayList.add("1");
arrayList.add("2");
arrayList.add("3");
Object[] array = arrayList.toArray(new String[3]);
for (Object o : array) {
System.out.println(o);
}
}
输出为:
[1, 2, 3]
2) 当ArrayList中存放的是基本数据类型时(例如int),成功
/**
* 使用了ArrayList的toArray方法 , ArrayList里存放的是int(基本数据类型)
*/
@Test
public
void list2Array2() {ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(1);
arrayList.add(2);
arrayList.add(3);
Object[] array = arrayList.toArray();
System.out.println(Arrays.toString(array));
}
输出为:
[1, 2, 3]
- Array转ArrayList
(1):使用Arrays的asList方法。
1)当Array中存放的是引用类型时(例如String),成功
/**
* 使用Arrays的asList方法,Array中存放的String(引用类型)
*/
@Test
public
void array2List1() {String[] stringArray = new String[] { "1", "2", "3" };
List<String> list = Arrays.asList(stringArray);
System.out.println(list);
}
输出为:
[1, 2, 3]
2) 当Array中存放的是基本数据类型时(例如int),不成功
/**
* 使用Arrays的asList方法,Array中存放int(基本类型)
*/
@Test
public
void array2List2() {int[] intArray = new
int[] { 1, 2, 3 };List<int[]> intList = Arrays.asList(intArray);
System.out.println(intList.size());
for (int[] is : intList) {
System.out.println(Arrays.toString(is));
}
}
输出为:
[[I@14514713]
List的长度为 : 1
[1, 2, 3]
这个问题解决的方法就是将int[]换成Integer[],这样内容就成了对象数组(即引用类型)。
/**
* 使用Arrays的asList方法,Array中存放int(基本类型)
*/
@Test
public
void array2List3() {Integer[] integerArray = { 1, 2, 3 };
List<Integer> intList = Arrays.asList(integerArray);
System.out.println(intList);
System.out.println("List的长度为 : " + intList.size());
for (Integer is : intList) {
System.out.println(is);
}
}
输出为:
[1, 2, 3]
List的长度为 : 3
参考文献:
ArrayList和Array之间的转换的更多相关文章
- ArrayList和List之间的转换
开发中不免碰到List与数组类型之间的相互转换,举一个简单的例子: package test.test1; import java.util.ArrayList; import java.util.L ...
- Java-Collection、Map及Array之间的转换
1 List -> Map 设个User类: public class User { private String userName; private String userId; privat ...
- Java-Collection、Map和Array之间的转换
1 List -> Map 设个User类: public class User { private String userName; private String userId; privat ...
- C#中ArrayList 、Array与、string、string[]数组的相关转换
一.ArrayList 与 string.string[]数组的转换 1.ArrayList 转换为 string[] : ArrayList list = new ArrayList(); list ...
- 37.Activity之间的转换以及数据的传递(Intent)学习
Intent简介: 在一个Androi ...
- JAVA中list,set,数组之间的转换详解
JAVA的list,set,数组之间的转换,主要是使用Apache Jakarta Commons Collections,具体的方法如下:import org.apache.commons.coll ...
- Java 集合 集合与数组之间的转换
Java 集合 集合与数组之间的转换 @author ixenos 数组转集合 Arrays.asList(T... a) 先给结论:用 Arrays.asList(T... a) 将数组转换成集合 ...
- java中 列表,集合,数组之间的转换
java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...
- JSON字符串和JS对象之间的转换
JSON字符串和JS对象之间的转换 1 json字符串转换为js对象 1.1 标准json格式字符串转换为Js对象 JSON字符串 str JSON.parse(str) eval(str) eva ...
随机推荐
- C++ 不支持模版的分离式编译
1.C++不支持模版的分离式编译,为什么? C++是分别,单独编译,对于每个cpp文件,预编译为编译单元,这个编译单元是自包含文件,编译的时候,不需要其他的文件,编译好了,生成obj文件,然后连接成e ...
- android 访问SMS短信收件箱
访问 SMS收件箱是另一个常见的需求.首先,需要将读取 SMS 的权限 <uses-permission android:name="android.permission.READ ...
- Swift 3.0 使用Core Data
swift版本:3.0 Xcode版本:8.0 iOS版本:10.0 自iOS10 和swift3.0 之后,苹果的访问CoreData的方法发生了很大改变,简洁了许多,下面的内容是从0开始建立一个e ...
- oc-03-OC访问OC源文件、C源文件中的函数
show.h #ifndef __OCDay01__Show__ #define __OCDay01__Show__ #include <stdio.h> extern void test ...
- mybatis0211 mybatis和spring整合
1mybatis和spring整合 1.1 mybaits和spring整合的思路 .让spring管理SqlSessionFactory .让spring管理mapper动态代理对象和dao. 使用 ...
- 解决iphone横屏时字体变大问题或者内容大小不一样等
在样式表中增加: @media screen and (max-device-width: 320px){body{-webkit-text-size-adjust:none}} @media scr ...
- iOS系统右滑返回全局控制方案
前言 今天有个小需求,在点击导航条上的返回按钮之前要调用某个API,并弹出UIAlertView来显示,根据用户的选项判断是否是返回还是继续留在当前控制器.举个简单的例子,当点击导航条上的左上角返回按 ...
- iCloud之旅
1.创建BIDTinyPixDocument类 #import <UIKit/UIKit.h> //创建文档类 @interface TinyPixDocument : UIDocumen ...
- struts2.1笔记04:struts2优点
- Sublime Text 2 实用快捷键[Mac OS X]
lucasfais 总结了一些非常实用的 Sublime Text 2 快捷键,Lucifr 将它们翻译成了中文,以方便查阅. 注意:修饰键(如⌘)后跟多个按键的情况表示在按住修饰键的情况下依次按下相 ...