我一遍又一遍地得到同样的错误

时间:2013-04-05 05:00:36

标签: java

这是我的错误。有谁知道为什么我得到这个错误的问题?我正在使用JGrasp

PeerTutorReport.java:13: error: <identifier> expected
    public static String[] getTutorNames(listNames) {
                                                  ^
1 error

---- jGRASP wedge2:进程的退出代码为1。

import javax.swing.JOptionPane;
import java.util.Arrays;


public class Report {

public static void main(String[] args) {


      String[] listNames = getTutorNames();
}

public static String[] getTutorNames(listNames) {

      String firstName;
    String lastName;
    String[] listNames = new String[10];

    for (int x = 0; x < listNames.length; x++) {
        firstName = JOptionPane.showInputDialog(null, "Enter Tutor's First Name: ");
        lastName = JOptionPane.showInputDialog(null, "Enter Tutor's Last Name: ");

        if (firstName.equals("") && lastName.equals("")) {
            break; // loop end
        }
        listNames[x] = lastName + ", " + firstName;
    }
    return listNames;
}

}

4 个答案:

答案 0 :(得分:0)

你不应该向这个方法传递一个参数。

 getTutorNames(someArg); //This is how you'd call the `getTutorNames(String[] listNames)` method.

这也应该是这样的: -

public static String[] getTutorNames(String[] listNames){ // Give a type for the "listNames" argument

此外,您需要为此处的参数getTutorNames(String[] listNames)指定其他名称,或在String[] listNames = new String[10];方法中为getTutorNames使用其他名称。

更新: - 以下代码确实有效。亲自检查。

public static void main(String[] args) {

    String[] listNames = getTutorNames();
}

public static String[] getTutorNames() {
    ...
}

答案 1 :(得分:0)

您有两个错误:

  1. 您必须为listNames参数定义类型。

    public static String[] getTutorNames(listNames) { //type of listNames??
    
  2. 您的getTutorNames需要您传递参数:

    String[] listNames = getTutorNames(); //argument here!
    
  3. 您似乎需要删除listNames方法的getTutorNames参数。

    public static String[] getTutorNames() {
        //code content...
    }
    

答案 2 :(得分:0)

您的方法签名应该是,请注意方法中缺少的参数中的String

public static String[] getTutorNames(String listNames)

您需要在调用方法时传递String。像

String[] listNames = getTutorNames("someName");

将您的方法更改为不带参数的方法

public static String[] getTutorNames()

答案 3 :(得分:-1)

将getTutorNames()的签名更改为不接受任何参数。那正是你想要的。无论如何它的错误定义。