如何在一行中输入多个不同类型的变量?例如-> string string int string int

时间:2019-05-29 12:22:00

标签: java input

使用Java中实现的哈希表,我需要获取5个输入值,其中3个为String,2个为Integers。用户必须能够在一行中写入所有输入值。我尝试了许多不同的方法,主要使用数组,但我找不到在线的正确答案。如果有人可以提供示例代码或想法,我将非常感激:)

Scanner input = new Scanner(System.in);
        Scanner input1 = new Scanner(System.in);

        System.out.println("Enter number of people:");
        int n = input1.nextInt();

        HTable table = new HTable(100);

        String a[] = new String[5];
        for(int i=0; i<n; i++)
        {
            a = input.nextLine().split(" ");
            table.Insert(a[0], a[1], Integer.parseInt(a[2]), a[3], Integer.parseInt(a[4]));
        }

这是我尝试过的最新示例,但它一直在接受输入,并且FOR()循环似乎并未结束。

1 个答案:

答案 0 :(得分:0)

您可以尝试这样:

public class Name{
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    System.out.println( "Enter Your Input ");
    while (scanner.hasNext()) 
    { 
        if (scanner.hasNextInt()) {
            System.out.println(" Your Value (Int) : " + scanner.nextInt());
        } else if (scanner.hasNextFloat()) {
            System.out.println(" Your Value (Float) " + scanner.nextFloat());
        } 
        else {
            System.out.println( " String Value(String) " + scanner.next());
        }
    }
}
}