无法从函数调用返回

时间:2017-11-22 11:51:13

标签: java return

我已经创建了下一个代码,但是无法调用normalizeText的返回。那是为什么?

public class crypto {

public static void main (String [] args) {
    String text = "Dit is een test";
    normalizeText(text);
    shiftAlphabet(normalizedText,-1);
    System.out.println("Dit is: " + normalizedText());
}

public static String normalizeText(String text){
    String normalizedText = text;
    text.replaceAll("\\s+","");
    normalizedText= text.replaceAll("[^a-zA-Z ]", "");
    normalizedText= text.toUpperCase();
    return normalizedText;
}

6 个答案:

答案 0 :(得分:2)

您尚未将normalizeText的结果分配给变量。

String normalizedText = normalizeText(text);
shiftAlphabet(normalizedText,-1);
System.out.println("Dit is: " + normalizedText);

答案 1 :(得分:1)

你没有将结果分配给你的变量,试试这个:

 public static void main (String [] args) {
        String text = "Dit is een test";
        String normalizedText = normalizeText(text);
        shiftAlphabet(normalizedText,-1);
        System.out.println("Dit is: " + normalizedText);
    }

    public static String normalizeText(String text){
        String normalizedText = text;
        text.replaceAll("\\s+","");
        normalizedText= text.replaceAll("[^a-zA-Z ]", "");
        normalizedText= text.toUpperCase();
        return normalizedText;
    }

答案 2 :(得分:0)

更改

normalizeText(text)

String normalizedText = normalizeText(text)

答案 3 :(得分:0)

我认为你想要达到的目标是:

public class crypto {

    public static void main (String [] args) {
        String text = "Dit is een test";
        String myNormalizedText = normalizeText(text);
        shiftAlphabet(myNormalizedText,-1);
        System.out.println("Dit is: " + myNormalizedText);
    }

    public static String normalizeText(String text){
        String normalizedText = text;
        text.replaceAll("\\s+","");
        normalizedText= text.replaceAll("[^a-zA-Z ]", "");
        normalizedText= text.toUpperCase();
        return normalizedText;
    }

答案 4 :(得分:0)

你的代码如何编译?

您正在调用System.out.println(" Dit是:" + normalizedText());没有参数。 normalizedText()方法需要一个String。您是否定义了另一个normalizedText()方法,签名中没有参数?

答案 5 :(得分:0)

从头到尾这是错误的。您正在调用normalizeText方法而不将其分配给变量。然后你尝试调用不带参数的normalizeText()。

尝试:

public static void main (String [] args) {
    String text = "Dit is een test";
    String normalizedText = normalizeText(text);
    System.out.println("Dit is: " + shiftAlphabet(normalizedText,-1));
}