gpt4 book ai didi

java - 使用java中的startsWith方法删除LinkedList元素

转载 作者:行者123 更新时间:2023-11-30 06:03:31 28 4
gpt4 key购买 nike

我正在尝试删除以 r 和 g 开头的列表元素

一个条件工作正常,可以删除从 r 开始的元素,但下一个条件在 if 循环中不起作用,帮助我解决我犯错误的地方。谢谢..!!

我的代码是

import java.util.Arrays;
import java.util.LinkedList;

public class EasyRemovingList {
void removeList(){
String[] inpArray={"red","green","blue","ivory"};
LinkedList<String> upList = new LinkedList<String>(Arrays.asList(inpArray));
System.out.println("Actual "+upList+" "+upList.size());
//System.out.println(upList.get(3));
for(int i = 0;i<upList.size();i++){
//System.out.println(upList.get(i));
if(upList.get(i).startsWith("r")||upList.get(i).startsWith("g")){
upList.remove(i);
System.out.println("Updated "+upList);
}
}
//System.out.println(upList);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
EasyRemovingList er = new EasyRemovingList();
er.removeList();

}

}

输出为

Actual [red, green, blue, ivory] 4
Updated [green, blue, ivory]

预期输出为

Actual [red, green, blue, ivory] 4
Updated [blue, ivory]

最佳答案

尝试使用removeIf()

upList.removeIf(element -> {return element.starts("r") || element.startsWith("g");});

MVCE

import java.util.Arrays;
import java.util.LinkedList;

/**
*
* @author Sedrick
*/
public class JavaApplication4 {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
String[] inpArray={"red","green","blue","ivory"};
LinkedList<String> upList = new LinkedList(Arrays.asList(inpArray));
System.out.println("Actual "+upList+" "+upList.size());

upList.removeIf(element -> {
return element.startsWith("r") || element.startsWith("g"); //To change body of generated lambdas, choose Tools | Templates.
});

System.out.println("Actual "+upList+" "+upList.size());

}

}

Results

run:
Actual [red, green, blue, ivory] 4
Actual [blue, ivory] 2
BUILD SUCCESSFUL (total time: 0 seconds)

关于java - 使用java中的startsWith方法删除LinkedList元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51959035/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com