数组Array转成List的几种方法

本文介绍了Java中如何将数组转换为List,并讨论了不同方法的实现与性能考量,包括使用Arrays.asList()、for循环添加元素到List以及利用Collections.addAll()方法。同时,文章还涉及了如何从字符串数组中去除重复值,以及整数数组转化为基本类型的数组实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组->List (StringArrayTest.java)

import java.util.Arrays;
import java.util.List;
import java.util.ArrayList;

public class StringArrayTest
{
public static void main(String[] args)
{
String[] words = {"ace", "boom", "crew", "dog", "eon"};

List wordList = Arrays.asList(words);

for (String e : wordList)
{
System.out.println(e);
}
}
}import java.util.Arrays;
import java.util.List;
import java.util.ArrayList;

public class StringArrayTest
{
public static void main(String[] args)
{
String[] words = {"ace", "boom", "crew", "dog", "eon"};

List wordList = Arrays.asList(words);

for (String e : wordList)
{
System.out.println(e);
}
}
}

比较傻的做法
String[] words={...};
List<String> list = new ArrayList(words.length);
for(String e: words){
list.add(e);
}

collections method
import java.util.Collections;
List myList = new ArrayList();
String myStringArray= new String[]{"dsdsa","pipe","little"};
Collections.addAll(myList,myStringArray);


java list用法,去除字符串数组中重复值
import java.util.Arrays;
import java.util.List;
import java.util.LinkedList;

public class ArrayTest {

public static List printMap1(String[] s) {
List<String> list = new LinkedList<String>();
List<String> list2 = Arrays.asList(s);
list.addAll(list2);
return list;

}

public static String[] array_unique(String[] a) {
// array_unique
List<String> list = new LinkedList<String>();
for(int i = 0; i < a.length; i++) {
if(!list.contains(a[i])) {
list.add(a[i]);
}
}
return (String[])list.toArray(new String[list.size()]);
}

public static void main(String[] args) {
String[] ar = {"dd","cc","ee","ff","gg","cc","ee"};
String[] s = array_unique(ar);
for(String aa : s) {
System.out.println(aa);
}
List list3 = printMap1(ar);
for(Object o : list3) {
System.out.println(o);
}
}
}
Integer 数组转成 int 数组
Integer[] objs -> int[] iobjs
Commons-lang 项目中的 ArrayList 的 toPrimitive 支持做 Java 中所有原生类型的数据转换,包括 int/float/double/char/short/byte
import org.apache.commons.lang.ArrayUtils;

Integer[] objs = ....;
int[] iobjs = ArrayUtils.toPrimitive(objs);

使用 Arrays.copyOf 进行数组复制
import java.util.Arrays;

public class ArrayCopy {
public static void main(String args[]) {
System.out.printf("Before (original)\t%s%n", Arrays.toString(args));
String copy[] = Arrays.copyOf(args, 4);
System.out.printf("Before (copy)\t\t%s%n", Arrays.toString(copy));
copy[0] = "A";
copy[1] = "B";
copy[2] = "C";
copy[3] = "D";
System.out.printf("After (original)\t%s%n", Arrays.toString(args));
System.out.printf("After (copy)\t\t%s%n", Arrays.toString(copy));
}
}

Java 删除字符串右边的空格
public static String rightTrim(String data)
{
if(data==null)
return null;

char[]arr=data.toCharArray();
char[] newArr=new char[1];
int pos=0;
//worst algorithm ever. but works!
for (int i = 0; i < arr.length; i++)
{
pos=(arr.length-1)-i;
// System.out.println("pos["+pos+"] i["+i+"] ["+arr[pos]+"]");
if(arr[pos]!=' ')
{
newArr= new char[pos+1];
System.arraycopy(arr, 0, newArr, 0, pos+1);
break;
}

}

return new String(newArr);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值