【问题标题】:Not a Statement Error - Where did I go wrong?不是语句错误 - 我哪里出错了?
【发布时间】:2017-08-03 18:06:09
【问题描述】:

所以,我对编码很陌生,但我有一个大学作业来创建一个文字操纵器。根据 int 输入,我应该从用户那里获取一个字符串和一个 INT 并反转每个第 N 个单词。 我正在执行步骤,并在第 38 行(我最后一个 FOR LOOP 的开始)处遇到此错误。编译器在这一行中给了我一个 Not an Statement Error 但我看不出哪里出错了。 有人可以给一个灯,好吗? ps:我不允许使用Token或inverse()。

import java.util.Scanner;
public class assignment3 {

  public static void main(String[] args) {
    // BOTH INPUTS WERE TAKEN
    Scanner input = new Scanner (System.in);
    String stringInput;
    int intInput;
    System.out.println("Please enter a sentence");
    stringInput = input.nextLine();
    System.out.println("Please enter an integer from 1 to 10. \n We will invert every word in that position for you!");
    intInput = input.nextInt();
    int counter = 1;

    // ALL CHARS NOW ARE LOWERCASE
    String lowerCaseVersion = stringInput.toLowerCase();


    // SPLIT THE STRING INTO ARRAY OF WORDS
    String [] arrayOfWords = null;
    String delimiter = " ";
    arrayOfWords = lowerCaseVersion.split(delimiter);
    for(int i=0; i< arrayOfWords.length; i++){
        System.out.println(arrayOfWords[i]);
        // THIS RETURNS AN ARRAY WITH ALL THE WORDS FROM THE INPUT
    }

    // IF THE INTEGER INPUT IS BIGGER THAN THE STRING.LENGTH, OUTPUT A MESSAGE
    // THIS PART IS WORKING BUT I MIGHT WANT TO PUT IT IN A LOOP AND ASK FOR INPUT AGAIN
    if (intInput > arrayOfWords.length){
        System.out.println("There are not enough words in your sentence!");
    }

    // NOW I NEED TO REVERSE EVERY NTH WORD BASED ON THE USER INPUT
    //THIS IS WHERE THE ERROR OCCURS
    for(int i=(intInput-1); i<arrayOfWords.length; (i+intInput)){
        char invertedWord[] = new char[arrayOfWords.length()];
        for(int i=0; i < arrayOfWords.length();i++){
            ch[i]=arrayOfWords.charAt(i);
        }
        for(int i=s.length()-1;i>=0;i--){
            System.out.print(invertedWord[i]);
        }
    }
  }
}

【问题讨论】:

  • 欢迎来到 Stack Overflow!请拿起tour,环顾四周,并通读help center,尤其是How do I ask a good question?What topics can I ask about here?。 - 请不要在标题中使用所有大写单词。这被认为是大喊大叫,这是不礼貌的。
  • 固定标题。谢谢
  • " 我正在按照步骤进行操作,但在第 38 行(FOR 循环)处遇到此错误" 我在这里看不到任何错误。请解释(在问题中)。
  • 我的编译器在我最后一个 For 循环开始的那一行给了我一个语句错误(我在代码中做了一个注释来指定发现错误的位置。)我看不到任何错误。

标签: java arrays input jcreator


【解决方案1】:

(i+intInput) 不是一个语句。这就像说 12。也许您的意思是 i=i+intInput 或 i+=intInput 将值分配给变量

【讨论】:

    【解决方案2】:

    嗯,一方面,我没有在代码的任何地方看到“s”(来自 s.length())。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-09
      • 2012-05-09
      • 2016-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 2011-03-14
      相关资源
      最近更新 更多