为了账号安全,请及时绑定邮箱和手机立即绑定

如何删除索引左侧的所有元素?

如何删除索引左侧的所有元素?

凤凰求蛊 2022-07-20 20:58:19
所以我目前正在做一个任务,我目前被卡住了。我无法弄清楚如何获取索引左侧的所有元素并将它们从 Arraylist 中删除。这些是确切的说明:对于这个程序,给定序列,删除所有的零,如果有的话,以及它们左边的所有数字。然后找到最大的剩余数字,如果是偶数则减去 2,或者如果是奇数,则减去 1。如果两个或多个数字并列为最大数字,则使用最右边的数字作为最大数字。重复将规则应用于序列。删除序列需要多少步?这是我到目前为止所拥有的:(对不起,如果代码有点乱)import java.io.*;import java.util.*;public class Main {  public static void main(String[] args) throws FileNotFoundException {    File inputFile = new File("input.txt");    Scanner scanFile = new Scanner(inputFile);    String input;    int testCase;    String testCaseS = "";    int zero;    //testCase = scanFile.nextInt();    //System.out.println(testCase);    input = scanFile.next();    //System.out.println(input);    //input = input.replaceAll(",", "");    String arr = input;    String[] items = arr.replaceAll("\\[", "").replaceAll("\\]", "").replaceAll("\\s", "").split(",");    int[] results = new int[items.length];    for (int i = 0; i < items.length; i++) {        try {            results[i] = Integer.parseInt(items[i]);        } catch (NumberFormatException nfe) {        };    }    //for (int o = 0; o <= items.length; o++)      //System.out.println(results[o]);    boolean choice = false;    int counter = 0;    List<Integer> intList = new ArrayList<Integer>();    for (int i : results)    {      intList.add(i);    }    if (!choice) {      for (int u = 0; u < items.length; u++) {        if (results[u] == 0)            counter++;            //intList.removeAll(Arrays.asList(0 ));        }      }      int zeroindex = intList.indexOf(0);      System.out.println(intList);  }}
查看完整描述

1 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

如果您只想删除特定索引中剩下的所有元素,那么

list.subList(0, index).clear();

这就是方法。


查看完整回答
反对 回复 2022-07-20
  • 1 回答
  • 0 关注
  • 97 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信