List 与 数组 互转

1、List转数组

  采用API中的T[]   List.toArray(T[] a) 方法  ,不能直接使用  (T[])list.toArray()

  因为数组不能够直接强制转换,例如

        Object[] objs={"123","456"};
        String[] strings=(String[])objs;
        System.out.println(Arrays.toString(strings));
        List<String> list=new ArrayList<>();
        list.add("abc");
        list.add("deg");
        String[] strings=(String[])list.toArray();
        System.out.println(Arrays.toString(strings));

  这样会引发ClassCastException,

  所以不能直接采用这种方法  ,必须使用  toArray(new T[size]);这里的size可以是任意的数字

        List<String> list=new ArrayList<>();
        list.add("abc");
        list.add("deg");
        list.add("teg");
        String[] strings=(String[])list.toArray(new String[1]);
        System.out.println(Arrays.toString(strings));

2、数组转List

调用Arrays的asList方法.
asList
public static <T> List<T>
asList(T... a)返回一个受指定数组支持的固定大小的列表。(对返回列表的更改会“直写”到数组。)此方法同 Collection.toArray
一起,充当了基于数组的 API 与基于 collection 的 API 之间的桥梁。返回的列表是可序列化的,并且实现了 RandomAccess。

此方法还提供了一个创建固定长度的列表的便捷方法,该列表被初始化为包含多个元素:

List stooges = Arrays.asList("Larry", "Moe", "Curly");
参数:
a
- 支持列表的数组。
返回:
指定数组的列表视图。
另请参见:
Collection.toArray()

        String[] strings={"hello","world"};
        List<String> list=Arrays.asList(strings);
        System.out.println(list.toString());

[hello, world]

  

时间: 2024-10-02 10:53:09

List 与 数组 互转的相关文章

Golang十六进制字符串和byte数组互转

Golang十六进制字符串和byte数组互转 需求 Golang十六进制字符串和byte数组互相转换,使用"encoding/hex"包 实现Demo package main import ( "encoding/hex" "fmt" ) func main() { str := "ff68b4ff" b, _ := hex.DecodeString(str) encodedStr := hex.EncodeToString

python 字符串数组互转

字符串转数组str = '1,2,3'arr = str.split(',') 数组转字符串arr = ['a','b']str = ','.join(arr) arr = [1,2,3]str = ','.join(str(i) for i in b)

字符串与数组互转

将string字符串转换为array数组 NSArray  *array = [Str componentsSeparatedByString:@","]; ==反向方法 将array数组转换为string字符串 NSString *tempString = [mutableArray componentsJoinedByString:@","];--分隔符

java中int与byte数组互转代码详细分析

转载请注明出处:http://blog.csdn.net/tang9140/article/details/43404385 在java中,可能会遇到将int转成byte[]数组,或者将byte[]数组转成int的情况.下面我们来思考下怎么实现? 首先,分析int在java内存中的存储格式. 众所周知,int类型在内存中占4个字节,采用补码方式存储(假如对原码.反码.补码不熟悉,请查阅相关资料).举例: 整型-128对应内存中的二进制值为 整型128对应内存中的二进制值为 然后,考虑如何把int

php utf8 gbk 数组 互转

这些都是工作中常用的 前几年写过 但没有记录的习惯,后边有要用到麻烦,现在记录下 以后直接拿来用 数组里的 utf8_to_gbk 方法 是上一篇写的 直接调用 public static function utf8_to_gbk_arr($arr) { if (!$arr) { return $arr; } if (!is_array($arr)) { return self::utf8_to_gbk($arr); } foreach ($arr as $key=>$val) { if (!i

java List与数组互转

数组转List:String[] arr = new String[] {"str1", "str2"};List<String> list = Arrays.asList(arr); List转数组: List<String> list = new ArrayList<String>();list.add("str1");list.add("str2");int size = list.s

集合与数组互转

一.集合转数组 以ArrayList集合为例,使用该集合的一个成员方法toArray(),可以将一个集合对象转化为一个数组.如下所示: 1 void listToArray(){ 2 List<String> list=new ArrayList<>();//创建一个集合对象 3 list.add("a");//向集合对象里添加元素 4 list.add("b"); 5 list.add("c"); 6 System.ou

javascript与php一维数组与二维数组互转

一.php: 一维转二维:a. 代码: /* @desc:一维数组转二维数组 @param data 需要转换的数组 @param key 主键 @return ret 转换后的数组 */ function onetomore($data,$key){ $ret = array(); foreach($data as $v){ $arr = array(); foreach($v as $k1=>$v1){ if($k1 != $key){ $arr[$k1] = $v1; } } $ret[$

C#字符串和数组互转

string str = "a,b,c,d,e"; string[] strArray = str.Split(','); //字符串转数组 str = string.Empty; str = string.Join(",", strArray);//数组转字符串 原文地址:https://www.cnblogs.com/xiaowei3632/p/9243618.html