-3

再編集...

    public EventData getEventDetails(String evtId, String Status) {
    //do some data selection here.
    return evData1;
    }

    public EventData[] getAdminAuthEvtDetails(String evtId, String Status) {
    String eId=evtId;
    String status=Status;
    EventData[] evData=new EventData[2];
    EventData[0] evData=getEventDetails(eId,"V");
    EventData[1] evData=getEventDetails(eId,"M");
    return evData;
    }

EventData は私の Java データ クラスです。そこにゲッターとセッターを設定します。getEventDetails メソッドを 2 回呼び出して、1 つのステータスを検証済みとして、もう 1 つを要求された ID の変更済みとして呼び出し、両方の evData を 1 つの配列に設定します。ここで、EventData[0] と EventData[1] にデータを取得できませんでしたというエラーが表示されます。getEventDetails メソッドの呼び出しにエラーはありますか?

最後に、正しいコードを取得しました。

    EventData[] evData=new EventData[2];
    evData[0]=getEventDetails(eId,"V");
    evData[1]=getEventDetails(eId,"M");
    return evData;
4

3 に答える 3

3

どちらのメソッドでも、Type ではなくオブジェクトを返す必要があります

最初の方法で:

public EventData getEventDetails(String evtId, String Status) {
    return new EventData(evtId, status);//don't know how is you constructor of EventData, but its just a smart guess. the idea is to create an object
}

そして2番目の方法で return eData;

于 2013-09-17T17:52:17.980 に答える
0

getEventDetailsメソッドも更新する必要があると思います。ただし、コンストラクターを呼び出して一般的に作成された のインスタンスを返す必要がありEventDataます。classclassnew EventData()

それ以外の場合、 ay89 は正しく、getAdmin...を返す必要がありますeData

于 2013-09-17T17:56:39.403 に答える
0

概念的には正しいです。他の人が言及した構文の問題がいくつかあります(クラスの代わりに変数を返すなど)。

それ以外の場合は、次の点に注意してください。

  • 通常、変数は大文字で始めるべきではないため、"Status" には小文字の "s" を使用することをお勧めします。
  • おそらく、evtId を eid に再宣言する必要はありません。evtId (および大文字と小文字が正しくない Status) 変数を直接使用できます。
  • 個人的には、おそらく getEventDetails(...) メソッドを createEventDetails(...) のように呼び出すのが好きです。それは、そのメソッドの機能をより示しているからです。「取得」は常に、作成するのではなく取得することを意味します。

ちょうど私の2c

于 2013-09-17T18:56:26.533 に答える