首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从String[]转换为数组列表,删除元素并转换回String[]

从String[]转换为数组列表,删除元素并转换回String[]
EN

Stack Overflow用户
提问于 2017-06-14 14:16:25
回答 3查看 77关注 0票数 0
代码语言:javascript
运行
复制
String [] TxtStr = new String[] {"bob","alan", "sam"};
List<String> stringList = new ArrayList<String>(Arrays.asList(TxtStr));

String [] TxtStr2 = new String[] {"bob","alan"};
List<String> stringList2 = new ArrayList<String>(Arrays.asList(TxtStr));

stringList.removeAll(stringList2);
String[] bTxtStr = stringList.toArray(new String[stringList.size()]);

String output = "nnn";

for (int x=0; x<bTxtStr.length; x++){
    output +=bTxtStr[x];
}

目前,这只是我正在做的一个安卓项目的一小部分,我必须比较2个String[]的内容。

我已经有了相当多的问题,所以我从一个简单的例子开始,2个String[]分别有2个和3个元素。在初始化String[]之后,我将它们转换为ArrayLists并执行removeAll函数,理想情况下,该函数应该从第一个列表中删除元素"bob“和"alan”,并最终从输出中删除。

顺便说一句,使用remove to stringList.remove("bob")可以从ArrayList中删除特定的字符串。只是想知道我能做些什么来确保stringList.removeAll(....)很管用。

提前感谢您的帮助。

EN

回答 3

Stack Overflow用户

发布于 2017-06-14 14:18:22

你有个bug:

代码语言:javascript
运行
复制
List<String> stringList2 = new ArrayList<String>(Arrays.asList(TxtStr));

您应该使用TxtStr2

代码语言:javascript
运行
复制
List<String> stringList2 = new ArrayList<String>(Arrays.asList(TxtStr2));
票数 2
EN

Stack Overflow用户

发布于 2017-06-14 14:33:06

ArrayList的

  • reomoveAll方法肯定工作得很好。你在创建第二个Java.JavaStreams时犯了错误。
  • 为了更简单,你可以使用ArrayList 8 Streams。尝试下面的代码。它会直接给你一个逗号分隔的字符串。您可以更改分隔字符。

代码语言:javascript
运行
复制
List<String> stringList = Arrays.asList("bob","alan", "sam");
List<String> stringList2 = Arrays.asList("bob","alan");
String mergedString = stringList.stream().filter(string ->!stringList2.contains(string)).collect(Collectors.joining(","));
System.out.println("Merged String: " + mergedString);
票数 2
EN

Stack Overflow用户

发布于 2017-06-14 14:19:11

您可能最终会删除所有内容,因为您的列表创建基于相同的数组。变化

代码语言:javascript
运行
复制
List<String> stringList2 = new ArrayList<String>(Arrays.asList(TxtStr);

代码语言:javascript
运行
复制
List<String> stringList2 = new ArrayList<String>(Arrays.asList(TxtStr2);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44536869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档