Java 如何从数组中删除小于20个字符的项?
我有一个Java数组。 我需要删除小于20个字符的项目。Java 如何从数组中删除小于20个字符的项?,java,arrays,eclipse,Java,Arrays,Eclipse,我有一个Java数组。 我需要删除小于20个字符的项目。 这是否可能以及如何实现?Java中的数组是固定大小的,就像在C中一样。您不能从中删除项,只能更新其值。该值也可以是null,这可能会满足您的需要 但是,不建议在您的用例中使用数组;而是使用列表实现 ARAYLIST/是默认的选择,而 Link KealStuts对列表中的大量添加和删除可能是有意义的。 对于Java 8,最好的方法是使用Streams API: List<String> withLongStringsDisca
这是否可能以及如何实现?Java中的数组是固定大小的,就像在C中一样。您不能从中删除项,只能更新其值。该值也可以是
null
,这可能会满足您的需要
但是,不建议在您的用例中使用数组;而是使用列表
实现<代码> ARAYLIST/<代码>是默认的选择,而List<String> withLongStringsDiscarded =
myStringList.stream().filter(s -> s.length() <= 20).collect(Collectors.toList());
List withLongStringsDiscarded=
myStringList.stream().filter(s->s.length()迭代它们中的每一个,使用.length()函数检查大小,并相应地创建数组
ArrayList<String> values = new ArrayList<String>();
for (String str : strArray) {
if (str.length() <= 20) {
values.add(str);
}
}
values.toArray();
ArrayList值=新的ArrayList();
用于(字符串str:strArray){
如果(str.length()使用以下代码,请从apache url下载common lang jar:
只需从数组中删除小于20个字符的项即可。只需检查其是否超过20个字符,然后将其删除:删除数组并检查长度,然后只需从数组中删除小于20个字符的项。我不希望为此类情况提供完整的解决方案。我认为他是个新手。。所以我马上就给了…你投了反对票吗?仅仅因为我认为他是一个新手你的帮助新手视为一个坏习惯。在这种情况下,它适用于所有给出答案的人…对吗?是的,其他人没有提供直接答案,但你这不会从数组中删除一个元素,它每次都会创建一个新数组。是的,你是正确的t、 每次都将返回一个新数组。我只是提供非常有用的ArrayUtils类以供使用。:)
String[] arr = {"1","ab","aaa","sdfsdfew","ssdd"};
for(String s : arr){
if(s.length()>3){
arr = ArrayUtils.removeElement(arr, s);
}
}
System.out.println(ArrayUtils.toString(arr));