【发布时间】:2021-09-30 08:49:57
【问题描述】:
我正在尝试打印存储在 ArrayList 中的数组的内容。
我的构造函数参数是 (String,String,String,String[], String, String)。
当创建 add. 函数到 arrayList 时,内容存储在 String[] 参数中。
但是当使用 getter 方法返回 String[] 时,它会引发错误:“类型不匹配:无法从 String 转换为 String[]”。
Eclipse的解决方法是把getter方法改成String,然后add.函数不起作用,因为参数应该是String[]。
所有 .toString、.clone 等都返回内存位置而不是数组内容。 急于求救!! 这是我的代码的一部分:
public class NewRegandLogin {
private String alumniFirstName;
private String alumniLastName;
private String alumniId;
private Scanner scanner = new Scanner(System.in);
private String linkedInPage;
static ArrayList<NewRegandLogin> loginInformation = new ArrayList<>();
private String alumniIdImput;
private String passwordImput;
private String permanentPasword;
private String[] coursesList;
public NewRegandLogin(String alumniFirstName, String alumniLastName,String alumniId, String[] coursesList, String linkedInPage, String permanentPasword) {
this.alumniFirstName=alumniFirstName;
this.alumniLastName = alumniLastName;
this.alumniId = alumniId;
this.coursesList = coursesList;
this.linkedInPage = linkedInPage;
this.permanentPasword = permanentPasword;
}
public void setAlumniCourses() {
coursesList = new String[10];
for (int i=0; i < coursesList.length; i++) {
if(coursesList[i]==null) {
System.out.println("Completed Course Name: ");
coursesList[i]=scanner.next();
}
if(coursesList[i].equals("s") || coursesList[i].equals("S")) {
break;
}
}
}
public String[] getCourses() {
return Arrays.toString(coursesList);
}
主要
public class Main {
static NewRegandLogin newRegAndLogin = new NewRegandLogin(null, null, null, null, null, null);
public static void main(String[] args) {
System.out.println("Please make a list of completed Courses: (Enter S to stop adding courses) ");
newRegAndLogin.setAlumniCourses();
loginInformation.add(newRegAndLogin);
printAlumniProfile();
}
public static void printAlumniProfile() {
for (int i = 0; i<NewRegandLogin.loginInformation.size();i++) {
System.out.println(((i+1)+"-"+ NewRegandLogin.loginInformation.get(i)));
System.out.println();
}
}
}
输出:
1-Alumni Name: Geri Glazer
Alumni ID: geri.glazer.she-codes
Courses completed: [Ljava.lang.String;@3dd3bcd
【问题讨论】: