プリアンブル: リストまたはその他のコレクションを使用して結果を返すことは承知していますが、リストを調べて結果を抜き出す必要があります: 2 番目の例を参照してください
Preamble-2: 「これは Java ではサポートされていません ...」以外の回答を探しています。
Java メソッド呼び出しから複数のオブジェクトを返す便利な方法を探しています。
PHPのようなもの:
list ($obj1, $obj2, ...) foobar();
たとえば、引数でホルダーオブジェクトを渡すのに本当にうんざりしています:
class Holder {
int value;
}
Holder h1=new Holder();
Holder h2=new Holder();
その後:
o.foobar(h1,h2);
...誰かがこれを回避するエレガントな方法を考え出した場合、非常に興味があります。
リストの使用
List<String> = foobar();
これには 2 つの欠点があります。
最初に家の呼び出し先側で List をパックする必要があります。
// this is on the callee side of the house
ArrayList<String> result = new ArrayList<String>
result.add("foo");
result.add("bar");
次に、呼び出し側で結果を取り出す必要があります。
// This is on the caller side
List<String> result = foobar();
String result1 = result.get(0);
String result2 = result.get(1); // this is not as elegant as the PHP equivalent
さらに、文字列、整数など、さまざまなタイプのオブジェクトを返したいとします。オブジェクトのリストを返してから、各オブジェクトをキャストする必要があります...きれいではありません
ありがとう。