Java中Pair使用方式和场景

目录

  • 1. Pair源码
  • 2. Pair使用
  • 3. Pair使用场景
  • 4. Pair与Map的区别

Pair存储的是一对信息对,key / value之间并可以没有关系

1. Pair源码

Java中提供的Pair很简单,在javafx.util包下

package javafx.util;

import java.io.Serializable;
import javafx.beans.NamedArg;

public class Pair<K,V> implements Serializable{

    private K key;
    
    public K getKey() { return key; }

    private V value;

    public V getValue() { return value; }
	//构造方法
    public Pair(@NamedArg("key") K key, @NamedArg("value") V value) {
        this.key = key;
        this.value = value;
    }

2. Pair使用

 Pair<Integer, String> pair = new Pair<>(1, "小明");
 Integer no = pair.getKey();
 String name = pair.getValue();

3. Pair使用场景

Pair的使用场景如下:

  1. 方法返回多个值:当一个方法需要返回多个值时,可以使用Pair来封装这些值并进行返回。比如,一个方法需要返回某个操作的结果以及相应的状态码,就可以使用Pair来封装这两个值并返回。

  2. 数据结构存储:有时候,我们需要将两个相关联的值作为一个整体来存储在数据结构中。例如,我们可能需要将学生的姓名和年龄作为一个整体存储在Map中,此时可以使用Pair来表示键值对。

  3. 算法实现:在一些算法中,需要同时处理两个值或保持两个值的关联性。比如,某些图遍历算法中,需要记录节点和距离之间的关系,可以使用Pair来存储这些信息。

  4. 排序和比较:有时候,需要根据两个值的关联关系进行排序或比较。Pair可以很方便地封装这两个值,并通过比较器来实现排序或比较操作。

4. Pair与Map的区别

  1. Pair通过getKey() / getValue()获取对应的key值和value值,没有添加键值对的操作
  2. Map是通过get() 获取对应的value,通过values()获取所有的value,而且还可以通过put进行新增键值对。
  3. pair保存的是一对key value,而map可以保存多对key value

你可能感兴趣的:(JavaSE,java,开发语言)