diff options
| author | Songchun Fan <schfan@google.com> | 2022-04-07 15:25:07 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2022-04-07 15:25:07 +0000 |
| commit | 6346fb8aa230bc6f2cf01279adaf33b045706931 (patch) | |
| tree | f4a74363d35b23ce15bd69477d3bd312df815948 /core/java/android/util/SparseSetArray.java | |
| parent | 6a6305969f70bf83f133c7d661ca73d453c35415 (diff) | |
| parent | 3def2802db726dc078a5e359b71aa814293aee04 (diff) | |
Merge "Revert "Revert "[AppsFilter] read-only interface for snapshots""" into tm-dev
Diffstat (limited to 'core/java/android/util/SparseSetArray.java')
| -rw-r--r-- | core/java/android/util/SparseSetArray.java | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/core/java/android/util/SparseSetArray.java b/core/java/android/util/SparseSetArray.java index f5025f7a9e99..f85280f0264b 100644 --- a/core/java/android/util/SparseSetArray.java +++ b/core/java/android/util/SparseSetArray.java @@ -15,15 +15,34 @@ */ package android.util; +import android.annotation.NonNull; + /** * A sparse array of ArraySets, which is suitable to hold userid->packages association. * * @hide */ public class SparseSetArray<T> { - private final SparseArray<ArraySet<T>> mData = new SparseArray<>(); + private final SparseArray<ArraySet<T>> mData; public SparseSetArray() { + mData = new SparseArray<>(); + } + + /** + * Copy constructor + */ + public SparseSetArray(@NonNull SparseSetArray<T> src) { + final int arraySize = src.size(); + mData = new SparseArray<>(arraySize); + for (int i = 0; i < arraySize; i++) { + final int key = src.keyAt(i); + final ArraySet<T> set = src.get(key); + final int setSize = set.size(); + for (int j = 0; j < setSize; j++) { + add(key, set.valueAt(j)); + } + } } /** |
