让我们说我有一个函数,当输入参数时,这些函数会将名称变为大写字母,其余的则以小写字母表示。
我有另一个功能来系统打印其他东西,包括我上面提到的功能。但我一直在收集编译错误,说'' void'这里不允许输入。
Java仍然很新,不知道如何调整它。有人可以帮我一把吗?
这是我提到的第一个功能
private void makePrettyString(String modelName)
{
// Change first letter of the name into upper case and store the first char only
char first = Character.toUpperCase(modelName.charAt(0));
// lower case the whole name
String lower = modelName.toLowerCase();
// store the whole name except the first char into the variable
String restInLowerCase = lower.substring(1);
// Combine the first char (which is upper case) and the rest of the name (which is in lower case)
this.modelName = first+restInLowerCase;
}
获取一些细节的第二个功能
public void getCarDetails()
{
System.out.println(makePrettyString(modelName));
}
答案 0 :(得分:1)
谢谢大家的帮助!
我刚刚意识到这是我需要做的所有事情,将方法从void
更改为String
,当然每个人都说要返回一些东西
所以这个工作
private String makePrettyString(String modelName)
{
// Change first letter of the name into upper case and store the first char only
char first = Character.toUpperCase(modelName.charAt(0));
// lower case the whole name
String lower = modelName.toLowerCase();
// store the whole name except the first char into the variable
String restInLowerCase = lower.substring(1);
// Combine the first char (which is upper case) and the rest of the name (which is in lower case)
return = first+restInLowerCase;
}
答案 1 :(得分:1)
将功能修改为:
private String makePrettyString(String modelName) {
//Your existing code
return this.modelName;
}
通过上面的工作,你的工作得到了解决,就像System.out.println(fun-call)一样,这个参数期望得到一些值,不幸的是这只是虚空!!
答案 2 :(得分:1)
将第一个方法的void更改为string。它必须返回一个字符串,所以将方法签名更改为字符串
像这样:private String makePrettyString(String modelName) // <-- change has to be made here (String instead of void)
{
// Change first letter of the name into upper case and store the first char only
char first = Character.toUpperCase(modelName.charAt(0));
// lower case the whole name
String lower = modelName.toLowerCase();
// store the whole name except the first char into the variable
String restInLowerCase = lower.substring(1);
// Combine the first char (which is upper case) and the rest of the name (which is in lower case)
return = first+restInLowerCase;
}
答案 3 :(得分:0)
该行 - &gt; System.out.println(makePrettyString(modelName));
会导致错误,因为定义了PrintStream
的类println()
没有println()
的重载方法,该方法将void
作为参数。< / p>
检查所有重载方法here。
只是为了清除注意,你不能在Java中使用接受void
作为参数的方法。现在,void
有一个占位符/包装,其名称为Void
* *还需要Void
类型的参数。
答案 4 :(得分:0)
如果getCarDetails()
和makePrettyString()
两个方法属于同一个类,
简单写一下
makePrettyString();
System.out.println(this.modelName)
;
您可以使用makePrettyString(String modelName)
方法访问this.modelName
,而不是使用参数makePrettyString()
。
HTH。