gpt4 book ai didi

java - 需要帮助创建类以反向返回名称并返回缩写

转载 作者:行者123 更新时间:2023-12-02 10:58:00 25 4
gpt4 key购买 nike

对于作业,我需要编写一个具有两个构造函数的类名称,一个构造函数有 3 个参数,分别代表第一个、最后一个和中间名首字母,另一个有两个参数,分别代表第一个和最后一个。我必须创建方法 getNormalOrder、getReverseOrder 和 getInitials。因此,如果名字是 John W Smith,getReverseOrder 将返回 Smith, John W.,getInitials 将返回 JWS,而 getNormalOrder 将定期返回它。我不断收到错误:

method getInitials in class Name cannot be applied to given types; 

当我在另一个文件中测试该方法时。我将把我的代码放在下面。

class Name {

private String firstName;
private String lastName;
private char middleName;

public Name(String firstName, char middleName, String lastName) {

this.firstName = firstName;
this.middleName = middleName;
this.lastName = lastName;
}


public Name(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}

public String getReverseOrder(String first, char middle, String last) {
String a = "";
a += last;
a += ", ";
a += first;
a += " ";
a += middle;

return a;
}

public String getReverseOrder(String first, String last) {
String a = "";
a += last;
a += ", ";
a += first;

return a;
}

public String getInitials(String first, char middle, String last) {
String a = "";
a += first.charAt(0);
a += middle;
a += last.charAt(0);
return a;
}

public String getInitials(String first, String last) {
String a = "";
a += first.charAt(0);
a += last.charAt(0);
return a;
}

}

我还没有写getNormalOrder。这就是我现在正在测试的方式。我想我做的一切都是完全错误的。

public class NameTest {

public static void main (String [] args) {

Name teacher = new Name("John", 'W', "Smith");
Name tf = new Name("John", "Smith");

System.out.println(teacher.getInitials());
}


}

最佳答案

问题是,您调用不带参数的方法

teacher.getInitials()

但是类中定义的方法分别采用 2 个和 3 个参数

getInitials(String first, String last)
getInitials(String first, char middle, String last)

这些方法不需要任何参数,因为必要的数据(第一个、中间、最后一个)已经存储在类成员中。该方法应该使用这些。其他方法也是如此。

作为 getInitials() 的示例(仅包含名字和姓氏)

public String getInitials() {
String a = "";
a += firstName.charAt(0);
a += lastName.charAt(0);
return a;
}

关于java - 需要帮助创建类以反向返回名称并返回缩写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51569246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com