当前位置: 首页 > 知识库问答 >
问题:

Java数组列表-在While循环中查找重复项

林英朗
2023-03-14

我试着解决这个数组列表问题,但没有成功

无论如何,在while循环中,我必须向ArrayList添加新的字符串项。

如果有一个重复的项目,应该有一个消息说重复的项目。

While循环将按单词结束中断

public static void main(String[] args) {
    
    ArrayList<String> lista1 = new ArrayList<>();
    Scanner in = new Scanner(System.in);
    
    while(true) {
        System.out.println("enter words: ");
        lista1.add(in.nextLine());
        if(lista1.containsAll(lista1)){
            System.out.println("Repeated words");
        }
        if(lista1.contains("end")) {
            break;
        }
    }

    for(String data:lista1)
        System.out.println(data);
}

共有1个答案

古棋
2023-03-14

如果我正确理解了您想做的,我相信您似乎在尝试循环用户输入,直到他们键入“End”(结束),每个输入到列表中,并通过打印“repeated word”(重复单词)来说明您是否已经添加了该单词。如果是这样的话,你们就很接近了。您只需要理解如何更好地使用列表数据结构。

public static void main(String[] args) {

    ArrayList<String> lista1 = new ArrayList<>();
    Scanner in = new Scanner(System.in);

    while(true) {
        System.out.println("enter words: ");
        String userInput = in.nextLine();
        if (lista1.contains(userInput)) { // checks if user's input is already in lista1
            System.out.println("Repeated word: " + userInput);
        } else { // if it's not, then add user's input to lista1
            lista1.add(userInput);
        }
        if (lista1.contains("end")) { // if lista1 contains "end", exit loop
            break;
        }
    }

    for(String data:lista1)
        System.out.println(data);

}
 类似资料:
  • 我想以小批量遍历ArrayList。 例如,如果ArrayList大小为75,批大小为10,我希望它处理记录0-10,然后10-20,然后20-30,依此类推。 我试过这个,但没有成功:

  • 我试图设计一个购物车,读取美元数额,然后打印这些值回来。然而,我的时循环不会终止,我的数组列表存储了错误的值。 结果应该是这样的: 但这是我的输出: while 循环不会终止,而是返回到第一个提示:“请输入商品价格,或 -1 退出:” 程序不断将“-1”计为数组列表的一部分。“-1”值应该充当“否”并终止向 arrayList 添加更多元素,但在我的代码中,它被吸收到 arrayList 中。我尝

  • 在js中,当在forEach函数中遍历arrayitems时,我遇到了一个问题。我只是有一个ID数组,其中一些ID不到10个字符,我想在开头用“0”填充这些字符。示例:在这种情况下,我想用填充最后一项。当然,它也可以在各种其他方式,但我只是不明白为什么它不起作用。 下面是我的代码:

  • 我目前有两个循环,一个获取时间戳,另一个while循环根据时间戳查找映射信息并以某种方式输出。 我的问题是我目前正在循环浏览一个文本,并希望它在第二个循环的isdo="N"时再次从头开始读取文件,但是,情况似乎并非如此。 迄今为止的代码:

  • 我目前正在学习UdemyJava课程,并正在练习我迄今为止学到的东西。 我有以下简单的程序,我计划使用它来让用户输入他的名字。 我想让程序在用户输入空白名称时重复错误消息,而不是从头开始重新启动整个程序。 例如,当用户输入一个空白的名字时,我希望程序继续重复“请输入至少1个字符的名字”,当用户输入一个空白的姓氏时,程序继续重复“请输入至少1个字符的姓氏”,直到用户输入一个有效的名字。 然而,当前当

  • 到目前为止,这就是我的答案,但从逻辑上讲,我的答案对于findNextCity方法似乎是错误的。此外,我甚至不知道如何处理问题的第二部分(以下)。 我应该遍历cityQueue中的每个元素,使用下一种方法计算的欧几里德距离(distbetweencies),确定哪个元素最接近当前城市(从第一个参数)。我必须忽略已经标记在堆栈中或堆栈中的城市以及当前城市本身(否则,城市将始终是离自身最近的城市!)。