Rumah >Java >javaTutorial >Bagaimanakah saya boleh mengembalikan berbilang nilai daripada kaedah Java?

Bagaimanakah saya boleh mengembalikan berbilang nilai daripada kaedah Java?

Susan Sarandon
Susan Sarandonasal
2024-11-02 07:53:291070semak imbas

How can I return multiple values from a Java method?

Mengembalikan Berbilang Nilai daripada Kaedah Java

Mengembalikan berbilang nilai daripada kaedah Java memberikan cabaran jika kaedah tradisional digunakan. Percubaan untuk mengembalikan dua nilai seperti yang ditunjukkan dalam kod di bawah akan mengakibatkan ralat kompilasi.

<code class="java">public static int something() {
    int number1 = 1;
    int number2 = 2;
    
    return number1, number2; // Compilation error: cannot return multiple values
}</code>

Mengatasi Had

Untuk menyelesaikan pengehadan ini, pertimbangkan untuk menggunakan kelas tersuai untuk mewakili hasil, dan bukannya mengembalikan tatasusunan atau menggunakan kelas Pasangan generik. Pendekatan ini bukan sahaja memastikan keselamatan jenis, tetapi juga meningkatkan kebolehbacaan kod.

Contoh Pelaksanaan

<code class="java">final class MyResult {
    private final int first;
    private final int second;

    public MyResult(int first, int second) {
        this.first = first;
        this.second = second;
    }

    public int getFirst() {
        return first;
    }

    public int getSecond() {
        return second;
    }
}

public static MyResult something() {
    int number1 = 1;
    int number2 = 2;

    return new MyResult(number1, number2);
}

public static void main(String[] args) {
    MyResult result = something();
    System.out.println(result.getFirst() + result.getSecond());
}</code>

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengembalikan berbilang nilai daripada kaedah Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn