Java 如何修改void类方法,使其返回所需信息
我编写了一个类,它有一整套静态方法。我的一个静态方法接受字符串作为参数。我应该给方法发送一个名字,比如John Mike Baldibanga,它应该返回一个字符串,其中只包含前两个名字的首字母和完整的姓氏 所以如果我把John Mike Baldibanga送到我的方法中,我希望它能返回 巴尔迪班加 到目前为止,我只能通过使用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
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);
FromString.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);
FromString.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。如果周围没有聪明人,我该怎么办?不知道……但是谢谢大家的帮助。乐意帮忙,别忘了点击复选标记接受答案,点击灰色向上箭头投赞成票。