【问题标题】:How do I print words in an array, and including the spaces between them?如何在数组中打印单词,并包括它们之间的空格?
【发布时间】:2014-06-17 13:03:59
【问题描述】:

以下程序仅适用于 1 个单词或一个数字。如果我的输入超过 1 个单词,那么在“空格”之后,输出会忽略输入的其余部分。所以,我希望 for 循环中的 print 语句将整个输入打印为 String 类型,包括空格。有什么建议吗?

import java.util.*;

class characters {

    public static void main(String[] args) {

        int upperC = 0;
        int lowerC = 0;
        //char ch;
        Scanner input = new Scanner(System.in);
        System.out.print("Enter input: ");
        String svar = input.next();

        String[] ary = svar.split("");

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

【问题讨论】:

  • 首先,您可能希望split 使用空格" " 而不是空字符串""。然后,当你打印时,你想添加一个空格,所以System.out.println(ary[i] + " ");
  • 那不行,我也这样做了。
  • 他的问题是 input.next(); 它只读取输入直到第一个 whitspace
  • 改为input.nextLine(),它会起作用。
  • @user3144097 您应该选择最佳答案,而不是更改标题。即使最好的答案是你自己的。

标签: java string for-loop input java.util.scanner


【解决方案1】:

换行

String svar = input.next();

String svar = input.nextLine();

【讨论】:

  • 您应该扩展您的答案,以解释为什么原来的行不起作用,以及新代码的行为有何不同。
【解决方案2】:
import java.util.*;

   class characters {

public static void main(String[] args) {

    int upperC = 0;
    int lowerC = 0;
    //char ch;
    Scanner input = new Scanner(System.in);
    System.out.print("Enter input: ");
    String word = input.nextLine();
    System.out.println("your complete String"+word);
    }
  }
}

【讨论】:

    【解决方案3】:

    感谢 kai,这是对我有用的正确代码。谢谢! :)

    import java.util.*;
    
    class characters {
    
        public static void main(String[] args) {
    
            int upperC = 0;
            int lowerC = 0;
            char ch;
            Scanner input = new Scanner(System.in);
            System.out.print("Enter input: ");
            String svar = input.nextLine();
    
            String[] ary = svar.split(" ");
    
            for (int i=0; i< ary.length; i++) {
                System.out.print(ary[i] + " ");
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-12
      • 1970-01-01
      • 1970-01-01
      • 2018-03-04
      • 2019-05-03
      • 2022-11-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多