Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 835d3102 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Return the previous value when adding a new one."

parents 1143a298 928bb445
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2709,7 +2709,7 @@ package android.util {

  public class SparseArrayMap<K, V> {
    ctor public SparseArrayMap();
    method public void add(int, @NonNull K, @Nullable V);
    method public V add(int, @NonNull K, @Nullable V);
    method public void clear();
    method public boolean contains(int, @NonNull K);
    method public void delete(int);
+9 −3
Original line number Diff line number Diff line
@@ -34,14 +34,20 @@ import java.util.function.Consumer;
public class SparseArrayMap<K, V> {
    private final SparseArray<ArrayMap<K, V>> mData = new SparseArray<>();

    /** Add an entry associating obj with the int-K pair. */
    public void add(int key, @NonNull K mapKey, @Nullable V obj) {
    /**
     * Add an entry associating obj with the int-K pair.
     *
     * @return the previous value associated with key, or null if there was no mapping for key.
     * (A null return can also indicate that the map previously associated null with key, if the
     * implementation supports null values.)
     */
    public V add(int key, @NonNull K mapKey, @Nullable V obj) {
        ArrayMap<K, V> data = mData.get(key);
        if (data == null) {
            data = new ArrayMap<>();
            mData.put(key, data);
        }
        data.put(mapKey, obj);
        return data.put(mapKey, obj);
    }

    /** Remove all entries from the map. */