0

我一直在为作业编写一段时间,但不知道如何接收用户输入的字符串以通过 unicode 过滤句子。当我尝试运行代码时,不会出现输入提示。我究竟做错了什么?任何建议表示赞赏。

package deel1;

import java.util.*;

public class Deel1 {

    public static void main(String[] args) {
    }

    static String getInput() {
        Scanner scan = new Scanner(System.in);
        String zin = "";

        System.out.println("Voer een zin in: ");
        if (scan.hasNextLine()) {
            zin = scan.nextLine().trim();
        }

        if (zin.equals("")) {
            System.out.println("Geen invoer!");
            System.exit(0);
        }
        return zin;
    }

    static String filterZin(String zin) {
        for (int groteLetters = 65; groteLetters <= 90; groteLetters++) {
            groteLetters = groteLetters + 32;
            char kleineLetterAlfabet = (char) groteLetters;
        }
        int specialeTekens1 = 33;
        int specialeTekens2 = 58;
        int specialeTekens3 = 91;
        if (specialeTekens1 <= 47 && specialeTekens2 <= 64 && specialeTekens3 <= 96) {
            System.out.println("");
        }
        System.out.println("Gefilterd: " + zin);
    }
}
4

2 回答 2

0

不,来吧,没有人发布答案?

正如Rohit 指出的那样,您从未调用过该函数!

//this method is the entry point
public static void main(String[] args) {

    // invoke getting input, store it in local variable
    String input = getInput();

    //invoke filtering method, store result in lcal variable
    String output = filterZin(input);


}

filterZin方法实际上并没有做任何事情......

更大的问题,它甚至无效!该filterZin方法被指定为具有 String 返回类型 - 并且没有返回任何内容。在末尾添加一个 return 语句,以获得至少一个语法正确的方法......

于 2013-09-14T21:32:28.183 回答
0

您编写了一个 getXYZ() 方法,该方法在调用时返回一个字符串。这是您的方法定义:

static String getInput() {
//your code
return someString;
}

这就是说,当您在程序中的任何位置调用此方法时,此方法将返回一个 String 对象。

在您的主要方法中:

String returnString = getInput();

这称为方法调用或调用。在您要求之前,您不会收到任何东西。

现在,关于您的程序要求用户输入。

这是一个简单的代码:

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//This will create a chain for input from console
System.out.println("Enter a line:");
String userInput;
try{
userInput = br.readline();
}catch(IOException e){
e.printStackTrace();
}
于 2013-09-14T21:51:45.547 回答