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

无法将所需的所有字符串输入字符串数组[duplicate]

薛华容
2023-03-14

所以,我知道这可能是一个非常愚蠢的问题,我是一个初学者,试图学习Java基础知识,我有一个字符串数组的问题,我不太明白。当我尝试将单词输入到字符串数组中,并且单词的数量由用户设置(例如5)时,我总是可以少输入一个单词(例如4而不是5)。我的代码在下面。

public static void main(String[] args) {

    Scanner scan = new Scanner(System.in);
    System.out.println("Enter the number of words");
    int n = scan.nextInt();
    String arr[] = new String[n];
    System.out.println("Please enter the words");
    for (int i = 0; i < arr.length; i++) {
        arr[i] = scan.nextLine();
    }

    for (int i = 0; i < arr.length; i++) {
        System.out.print(" " + arr[i]);
    }

}

共有1个答案

刘和玉
2023-03-14

这是因为当你使用nextInt()时,它没有读取换行符。您可以使用两种方法来避免这种情况。

>

  • 使用nextLine,即使用Integer.parseInt(scanner.nextLine())代替nextInt()。

     int n = Integer.parseInt(scan.nextLine());
     String arr[] = new String[n];
    

    在for循环之前调用nextLine,以便在for循环之前使用冗余的换行符。

     int n = scan.nextInt();
     String arr[] = new String[n];
     scan.nextLine();
     System.out.println("Please enter the words");
    

  •  类似资料:
    • 问题内容: 我已经看到了关于获取所有可能的子字符串(即相邻字符集)的许多问题,但是对于生成所有可能的字符串(包括其子字符串的组合)都没有疑问。 例如,让: 我希望输出是这样的: 要点是,我们可以删除原始字符串中不相邻的多个字符(以及相邻的字符)。 到目前为止,这是我尝试过的: 但是,这只会从原始字符串中删除相邻字符串的集合,而不会返回上例中的元素。 另一个示例是,如果我们使用字符串,则输出列表应包

    • 问题内容: 尝试删除所有非0-9的字母和字符和一个句点。我正在使用,但它也会删除小数,如何也保留小数? 问题答案: 试试这个代码: 现在将包含。

    • 我正在研究弦和一个问题。问题陈述是“将字符串中的所有数字加一”。我没有得到输入数字129和9923所需的输出。有人能帮忙吗!

    • 问题内容: 我在网上找到了一个链接,该链接显示了一种算法来生成字符串的所有组合:http : //www.mytechinterviews.com/combinations-of-a- string 算法复制如下。 我不明白的是这行: 如果我删除此行,则该程序显然不再起作用,但是为什么首先需要这样做?我了解递归的想法,在这个想法中,我们改变了初始字符,然后对其余字符进行了递归,但是deleteCh

    • 我想从我的Android应用程序向Spring Boot发送post请求。我使用okhttp以JSON格式发送HTTP post请求。代码如下: 每次我使用Android请求发送post请求时,我都会收到400个错误的请求参数“name”不存在,“path”:“/newcustomer”。但当我使用postman时,它可以工作。

    • 问题内容: 我有一个如下的文本文件。我想读取给定值作为浮动列表。之后,我将进行一些计算。我使用了拆分功能和转换来浮动。但是我不能转换第一个和最后一个,因为这两个都有方括号。([])。它给出了如下错误。 文件格式 错误 我使用的代码 任何人都可以给我一个想法,如何将这些值读入如下所示的float数组中。 然后我可以调用X [1],X [999]之类的值 问题答案: 用于将每一行解析为浮点数列表: 每