Java 如何修改void类方法,使其返回所需信息

Java 如何修改void类方法,使其返回所需信息,java,class,types,return,Java,Class,Types,Return,我编写了一个类,它有一整套静态方法。我的一个静态方法接受字符串作为参数。我应该给方法发送一个名字,比如John Mike Baldibanga,它应该返回一个字符串,其中只包含前两个名字的首字母和完整的姓氏 所以如果我把John Mike Baldibanga送到我的方法中,我希望它能返回 巴尔迪班加 到目前为止,我只能通过使用void来找出如何使该方法工作 public static void Theinitials(String z){ String s []= z

我编写了一个类,它有一整套静态方法。我的一个静态方法接受字符串作为参数。我应该给方法发送一个名字,比如John Mike Baldibanga,它应该返回一个字符串,其中只包含前两个名字的首字母和完整的姓氏

所以如果我把John Mike Baldibanga送到我的方法中,我希望它能返回 巴尔迪班加

到目前为止,我只能通过使用void来找出如何使该方法工作

    public static void Theinitials(String z){

        String s []= z.split(" ");

                System.out.print(s[0].charAt(0) + " ");

                System.out.print(s[1].charAt(0)+ " ");
            System.out.println(s[2]);


    }
这就是我目前用来调用该方法的方法:

String.Theinitials(名称)

它应该返回一个字符串

因此,返回一个
String
,而不是
void
,而不是
System.out.print
ing,建立一个
String结果
,并
返回以下内容:

public static String theInitials(String z){
    String s []= z.split(" ");
    String result = s[0].charAt(0) + " " + s[1].charAt(0) + " " + s[2];
    return result;
}
如果需要,请稍后打印:

String initials = WhatEverYourClassIsCalled.theInitials(name);
System.out.println(initials);
From
String.Theinitials(name)
看起来您的类被称为
String
。那可能会让你头疼,我建议把它改名

还要注意我如何调用方法
theInitials
,这被称为lowerCamelCase,它只是在Java中命名方法和变量时使用的

它应该返回一个字符串

因此,返回一个
String
,而不是
void
,而不是
System.out.print
ing,建立一个
String结果
,并
返回以下内容:

public static String theInitials(String z){
    String s []= z.split(" ");
    String result = s[0].charAt(0) + " " + s[1].charAt(0) + " " + s[2];
    return result;
}
如果需要,请稍后打印:

String initials = WhatEverYourClassIsCalled.theInitials(name);
System.out.println(initials);
From
String.Theinitials(name)
看起来您的类被称为
String
。那可能会让你头疼,我建议把它改名


还请注意我如何调用方法
theInitials
,这称为lowerCamelCase,仅在Java中命名方法和变量时使用。

void方法是一种没有返回类型的方法。我认为您正在尝试返回字符串,只需更改方法返回类型,如下所示:

public static String Theinitials(String z){

    String s []= z.split(" ");
    String str;

    str = (s[0].charAt(0) + " ");
    str = (str + (s[1].charAt(0)+ " "));
    str = (str + s[2]);

    return str;
}

这将生成一个字符串str,该字符串将由导出到控制台的字符串组成。然后返回该字符串。

void方法是没有返回类型的方法。我认为您正在尝试返回字符串,只需更改方法返回类型,如下所示:

public static String Theinitials(String z){

    String s []= z.split(" ");
    String str;

    str = (s[0].charAt(0) + " ");
    str = (str + (s[1].charAt(0)+ " "));
    str = (str + s[2]);

    return str;
}
这将生成一个字符串str,该字符串将由导出到控制台的字符串组成。然后返回该字符串

到目前为止,我只知道如何让这个方法通过 使用空白

    public static void Theinitials(String z){

        String s []= z.split(" ");

                System.out.print(s[0].charAt(0) + " ");

                System.out.print(s[1].charAt(0)+ " ");
            System.out.println(s[2]);


    }
void
不应返回任何值

如果您确实想知道一个使用void的方法如何工作,请在类中声明一个私有静态成员,并将要返回的值赋给这个静态变量。[虽然这不是强烈建议,但因为您提出了要求]

最好的选择是让方法返回
String

到目前为止,我只知道如何让这个方法通过 使用空白

    public static void Theinitials(String z){

        String s []= z.split(" ");

                System.out.print(s[0].charAt(0) + " ");

                System.out.print(s[1].charAt(0)+ " ");
            System.out.println(s[2]);


    }
void
不应返回任何值

如果您确实想知道一个使用void的方法如何工作,请在类中声明一个私有静态成员,并将要返回的值赋给这个静态变量。[虽然这不是强烈建议,但因为您提出了要求]


最好的选择是让方法返回
String

从方法中取出println。而是返回一个字符串,并让调用代码在其中包含println。为什么该方法必须具有
void
返回类型<代码>字符串
返回类型适合这里。我试过了,但不起作用。我尝试编写字符串b=s[0]。字符(0)+“”+s[1]。字符(0)+“”+s[2];返回b;但是它不起作用,因为我在将它更改为字符串返回类型时遇到了很多问题
返回s[0]。charAt(0)+“”+s[1]。charAt(0)+“”+s[2]应该已经工作了。错误是什么?从方法中取出println。而是返回一个字符串,并让调用代码在其中包含println。为什么该方法必须具有
void
返回类型<代码>字符串
返回类型适合这里。我试过了,但不起作用。我尝试编写字符串b=s[0]。字符(0)+“”+s[1]。字符(0)+“”+s[2];返回b;但是它不起作用,因为我在将它更改为字符串返回类型时遇到了很多问题
返回s[0]。charAt(0)+“”+s[1]。charAt(0)+“”+s[2]应该已经工作了。错误是什么?好的,现在我知道它为什么不起作用了,我输入了字符串b==s[0]。字符(0)+“”+s[1]。字符(0)+“”+s[2];但我忘了将方法从void改为String。如果周围没有聪明人,我该怎么办?不知道……但是谢谢大家的帮助。乐意帮忙,别忘了点击复选标记接受答案,点击灰色向上箭头投赞成票。好了,现在我知道为什么它不起作用了,我输入了字符串b==s[0]。charAt(0)+“”+s[1]。charAt(0)+“”+s[2];但我忘了将方法从void改为String。如果周围没有聪明人,我该怎么办?不知道……但是谢谢大家的帮助。乐意帮忙,别忘了点击复选标记接受答案,点击灰色向上箭头投赞成票。