Rumah > Java > javaTutorial > Cara menggunakan Pair dalam java untuk mengembalikan hasil berpasangan

Cara menggunakan Pair dalam java untuk mengembalikan hasil berpasangan

王林
Lepaskan: 2023-05-18 19:58:04
ke hadapan
1449 orang telah melayarinya

Gunakan Pair untuk mengembalikan hasil berpasangan

Dalam bahasa C/C++, Pair (pair) ialah bekas yang menggabungkan dua jenis data menjadi satu jenis data, seperti std::pair.

Pair mempunyai dua kegunaan utama:

  1. Letakkan kunci dan nilai bersama untuk pemprosesan pasangan, terutamanya digunakan untuk mengembalikan pasangan nilai nama dalam Peta, seperti dalam kelas Kemasukan Peta ;

  2. Apabila fungsi perlu mengembalikan dua hasil, anda boleh menggunakan Pair untuk mengelak daripada menentukan terlalu banyak kelas model data.

Penggunaan pertama adalah lebih biasa, di sini kami menerangkan penggunaan kedua.

1. Tentukan kelas model untuk melaksanakan pengembalian hasil berpasangan

Kod pelaksanaan fungsi:

/** 点和距离类 */@Setter@Getter@ToString@AllArgsConstructorpublic static class PointAndDistance {    /** 点 */
    private Point point;    /** 距离 */
    private Double distance;
}/** 获取最近点和距离 */public static PointAndDistance getNearestPointAndDistance(Point point, Point[] points) {    // 检查点数组为空
    if (ArrayUtils.isEmpty(points)) {        return null;
    }    // 获取最近点和距离
    Point nearestPoint = points[0];    double nearestDistance = getDistance(point, points[0]);    for (int i = 1; i < points.length; i++) {        double distance = getDistance(point, point[i]);        if (distance < nearestDistance) {
            nearestDistance = distance;
            nearestPoint = point[i];
        }
    }    // 返回最近点和距离
    return new PointAndDistance(nearestPoint, nearestDistance);
}
Salin selepas log masuk

Kes penggunaan fungsi:

rreee

2 kelas Pair Melaksanakan pemulangan hasil berpasangan

Dalam JDK, struktur data Pasangan asli tidak disediakan dan Map::Entry boleh digunakan sebaliknya. Walau bagaimanapun, kelas Pair dalam pakej commons-lang3 Apache lebih mudah digunakan. Berikut menggunakan kelas Pair sebagai contoh.

Kod pelaksanaan fungsi:

Point point = ...;
Point[] points = ...;
PointAndDistance pointAndDistance = getNearestPointAndDistance(point, points);if (Objects.nonNull(pointAndDistance)) {
    Point point = pointAndDistance.getPoint();
    Double distance = pointAndDistance.getDistance();
    ...
}
Salin selepas log masuk

Kes penggunaan fungsi:

/** 获取最近点和距离 */public static Pair<Point, Double> getNearestPointAndDistance(Point point, Point[] points) {    // 检查点数组为空
    if (ArrayUtils.isEmpty(points)) {        return null;
    }    // 获取最近点和距离
    Point nearestPoint = points[0];    double nearestDistance = getDistance(point, points[0]);    for (int i = 1; i < points.length; i++) {        double distance = getDistance(point, point[i]);        if (distance < nearestDistance) {
            nearestDistance = distance;
            nearestPoint = point[i];
        }
    }    // 返回最近点和距离
    return Pair.of(nearestPoint, nearestDistance);
}
Salin selepas log masuk

Atas ialah kandungan terperinci Cara menggunakan Pair dalam java untuk mengembalikan hasil berpasangan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan