2

Java では、Point(x,y) のような構造体変数を返す必要がある場合があります。ただし、この結果はコードの 1 か所で 1 回しか使用しません。ですから、Point というクラスを宣言するのは過剰に思えます。x個のパラメータを持つある種の匿名オブジェクトを返す方法はありますか?

4

2 に答える 2

1

を返すことはできますがArrayList、問題は anArrayListが 1 つの特定の型にバインドされているため、これらのパラメーターの型が異なる場合は、それらを型キャストする必要があります。あなたの例では、xandyはタイプintまたはdouble私が推測するものですが、それでも.

「匿名」クラスが必要な場合でも、クラス署名が必要です。Point次のように、インナークラスとして作成したい場合があります。

public class SomeClass {
    class Point {
        private int x;
        private int y;
        public Point(int x, int y) {
            this.x = x;
            this.y = y;
        }
    }

    private Point p;
}

なぜネストされたクラス? その理由については、 Java™ チュートリアルを参照してください。 Point

于 2013-01-22T08:14:37.583 に答える
0

Arrayまたはを返すことができますArrayList

int[] GetPoint( ... )
{
    int[] arr = null;
    // ...
    // Find length (say len)

    arr = new int[len];

    // Business logic
    // ...

    return arr;
}
于 2013-01-22T06:03:30.760 に答える