java - 使控制台 Print() 按顺序显示用户的输入?

标签 java

public class PlayerTest {

public static void main(String[] args) {

        // Ask how many players will play
        System.out.print("How many players(4 max) : ");
        int value = input.nextInt();

        while (true) {
            /* Players need to be 1-4 max */
            if (value <= 4 && value >= 1) {
                System.out.println("You have " + value + " players");
                break;
                /* Cannot be less than 1 */
            } else if (value < 1) {
                System.out.println("(You cannot have less than 1 player)");
                System.out.println("Please Try again : ");
                value = input.nextInt();
                /* Cannot be more than 4 */
            } else if (value > 4) {
                System.out.println("(You cannot have more than 4 players)");
                System.out.println("Please try again :");
                value = input.nextInt();
            }
        }

for (int i = 1; i <= value; i++) {
            System.out.println("Player" + i + " Please Enter your name : ");
            String PlayerName = input.next();
            System.out.println("Please enter your number : ");
            int PlayerNumber = input.nextInt();

        System.out.println(PlayerName);
        System.out.println(PlayerNumber);

        }
    }
}

如果用户想要让 2 名玩家加入游戏,系统会要求他们输入姓名号码。输入它们的值后,我希望控制台输出玩家1的名称号码,然后输出玩家2 名称号码

我想要的示例

John 30
Robert 50

最佳答案

我想回答这个问题。请记住,我也是一个非常新的初学者。然而,以下内容满足了我认为您的需要,因为您不是很具体。我正在使用 @downshift 推荐的非常基本的类。

import java.util.*;

public class RandomClass
{

    public static void main(String[] args) 
    {
        Scanner input = new Scanner(System.in);

        String name;
        int num;

        PlayerInfo[] players = new PlayerInfo[4];

        // Ask how many players will play
        System.out.print("How many players(4 max) : ");
        int value = input.nextInt();

        while (true) 
        {
            // Players need to be 1-4 max
            if (value <= 4 && value >= 1) {
                System.out.println("You have " + value + " players");
                break;
                // Cannot be less than 1
            } else if (value < 1) {
                System.out.println("(You cannot have less than 1 player)");
                System.out.println("Please Try again : ");
                value = input.nextInt();
                // Cannot be more than 4
            } else if (value > 4) {
                System.out.println("(You cannot have more than 4 players)");
                System.out.println("Please try again :");
                value = input.nextInt();
            }
        }

        for (int i = 0; i < value; i++) 
        {
            System.out.println("Player" + (i + 1) + " Please Enter your name : ");
            String PlayerName = input.next();
            System.out.println("Please enter your number : ");
            int PlayerNumber = input.nextInt();

            players[i] = new PlayerInfo(PlayerName, PlayerNumber);

        }

        System.out.println();

        for (int i = 0; i < value; i++)
        {
            System.out.println(players[i].getName());
            System.out.println(players[i].getNum());
            System.out.println();
        }
    }
}

class PlayerInfo
{
    // variables
    private String name;
    private int num;

    // constructors
    public PlayerInfo() {}

    public PlayerInfo (String xname, int xnum)
    {
        name = xname;
        num = xnum;
    }

    // methods
    public String getName()
    {
        return name;
    }

    public int getNum()
    {
        return num;
    }
}

关于java - 使控制台 Print() 按顺序显示用户的输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43828192/

相关文章:

java - 接口(interface)中的字段

java - 当结果是一条记录时,Hibernate Search/Lucene 返回 null 元素

java - System.currentTimeMillis() 和夏令时

java - 将 SQL 和绑定(bind)数据转换为直接 SQL

java - Android Studio 应用程序崩溃

java - 在 Spring 中将属性文件中的所有键和值作为 Map 注入(inject)

具有泛型类的 Java 枚举

JavaFX场景: Add Scene To Tab

Java JTable 列标题不显示

java - swt 教程或指南