您好,登錄后才能下訂單哦!
在Java中,三元組(Triple)通常是指一個包含三個元素的數據結構。雖然Java沒有內置的三元組類型,但你可以使用自定義類或者其他數據結構來實現三元組。以下是一些在Java中使用三元組的高級用法:
public class Triple<A, B, C> {
public final A first;
public final B second;
public final C third;
public Triple(A first, B second, C third) {
this.first = first;
this.second = second;
this.third = third;
}
// 重寫equals和hashCode方法
// 重寫toString方法
}
Triple
類:import org.apache.commons.lang3.tuple.Triple;
import org.apache.commons.lang3.tuple.ImmutableTriple;
public class Main {
public static void main(String[] args) {
Triple<String, Integer, Double> triple = ImmutableTriple.of("Hello", 42, 3.14);
System.out.println(triple.getLeft()); // 輸出 "Hello"
System.out.println(triple.getMiddle()); // 輸出 42
System.out.println(triple.getRight()); // 輸出 3.14
}
}
Map.Entry
實現簡單的三元組:public class Triple<A, B, C> extends AbstractMap.SimpleEntry<A, Map.Entry<B, C>> {
public Triple(A key, B valueKey, C valueValue) {
super(key, new AbstractMap.SimpleEntry<>(valueKey, valueValue));
}
public A getFirst() {
return getKey();
}
public B getSecond() {
return getValue().getKey();
}
public C getThird() {
return getValue().getValue();
}
}
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<Triple<String, Integer, Double>> triples = Arrays.asList(
new Triple<>("A", 1, 1.0),
new Triple<>("B", 2, 2.0),
new Triple<>("C", 3, 3.0)
);
List<String> firstElements = triples.stream()
.map(Triple::getFirst)
.collect(Collectors.toList());
System.out.println(firstElements); // 輸出 ["A", "B", "C"]
}
}
這些高級用法展示了如何在Java中創建和使用三元組。你可以根據自己的需求選擇合適的方法來實現三元組。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。