public static void main(String[] args) {
    Scanner sc=new Scanner(System.in);
    int N=sc.nextInt();
    String s="";
    for(int i=0;i<N;i++){
       s=sc.nextLine();
    }


例如:N = 10
S = aabbbabbab

如何获取n长度的String输入?
我正在尝试采用长度为N的输入String。
我知道上述逻辑是错误的,但我仍然感到困惑吗?
PS:输入的第一行包含一个整数N-字符串的长度。
第二行包含初始字符串S本身。

最佳答案

检查输入的String是否大于maximumlength

if (s.length() > maximumLength) { // do something


您可以使用子字符串来修剪输入。

fixedInput = s.substring(0, maximumLength - 1);


好的,因为您首先阅读数字,所以必须使用第一个输入初始化maximumLength

或者,您可以询问用户,直到输入适合输入的长度为止:

do {
   s = sc.nextLine();
   if (s.length() != maximumLength)
      System.out.println("The input did not fit the size");
} while (s.length() != maximumLength);

09-08 12:14