将其推送到下一个列表项

ogq8wdun  于 2021-07-12  发布在  Java
关注(0)|答案(2)|浏览(354)

**结案。**此问题不可复制或由打字错误引起。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。

15小时前关门了。
改进这个问题
我正在尝试合并到2个列表,然后将它们一起打印为“name”和“chore”。那我就得把他们洗牌,加入他们。洗牌很好用。
但是,当我在这个琐事中添加一个以上的单词时,它就会成为列表中的下一项。我不知道怎么解决这个问题。有什么建议吗?

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

/**
 * Create a Java file called chores.java . Inside, write a Java lot-drawing
 * program that allows the user to enter a list of names and a list of chores
 * (equal lengths). The program should assign each person a random chore. Print
 * out the pairs (i.e. name + chore)
 * 
 * @author Nada
 *
 */

public class chores {

    public static void main(String[] args) {
        System.out.println("Enter 3 names\n----------------------");

        List<String> nameList = new ArrayList<String>();

        Scanner input = new Scanner(System.in);

        for (int i = 0; i < 3; i++) {
            System.out.print("Enter name: ");
            nameList.add(input.next());
        }

        System.out.println("\nEnter 3 chores\n-------------------");

        List<String> choreList = new ArrayList<String>();
        for (int i = 0; i < 3; i++) {
            System.out.print("Enter chore: ");
            choreList.add(input.next());
        }

        input.close();

        // Prints in original order
        System.out.println("\nChores list\n------------------------");

        List<String> list3 = new ArrayList<>();
        for (int i = 0; i < nameList.size(); i++) {
            list3.add(nameList.get(i) + ", " + choreList.get(i));
        }
        for (String str : list3) {
            System.out.println(str);
        }

        // Shuffles list
        System.out.println("\nShuffled Chores List\n------------------------");
        Collections.shuffle(nameList);
        // System.out.println( "Shuffled Names: " + nameList);

        Collections.shuffle(choreList);
        // System.out.println( "Shuffled Chores: " + choreList);

        List<String> list4 = new ArrayList<>();
        for (int i = 0; i < nameList.size(); i++) {
            list4.add(nameList.get(i) + ": " + choreList.get(i));
        }
        for (String str : list4) {
            System.out.println(str);
        }

    }

}
vu8f3i0k

vu8f3i0k1#

而不是 System.out.print("Enter name: "); 尝试 System.out.println("Enter name: ");
而不是 nameList.add(input.next()); 尝试 nameList.add(input.nextLine());

anauzrmj

anauzrmj2#

如果要使用整行文本作为输入,请使用input.nextline();

相关问题