NSArray去除重複元素的方法

2021-07-16 22:08:32 字數 860 閱讀 7250

有時需要將nsarray中去除重複的元素,而存在nsarray中的元素不一定都是nsstring型別。今天想了想,加上朋友的幫助,想到兩種解決辦法,先分述如下。

1.利用nsdictionary的allkeys(allvalues)方法

可以將nsarray中的元素存入乙個字典,然後利用allkeys或者allvalues取得字典的所有鍵或值,這些鍵或值都是去重的。

示例**:

nsarray *arr = @[@111,@222,@111];

nsmutabledictionary*dict = [nsmutabledictionary

dictionary];

for (nsnumber *number in arr)

nslog(@"%@",[dict allvalues]);

輸出結果為:

2013-05-21 12:03:49.449 test1[4377:c07] (

111,

222)

2.利用nsset的allobjects方法

這種方法更快,利用nsset不會新增重複元素的特性。不過去重的陣列沒有進行排序,如果需要排序,可以使用nssortdescriptor類。

示例**:

nsarray *arr = @[@111,@222,@111];

nsset *set = [nsset

setwitharray:arr];

nslog(

@"%@"

,[set allobjects]);

輸出結果為:

2013-05-21 12:06:26.508 test1[4547:c07] (

111,

222)

IOS 開發 NSArray去除重複元素的方法

有時需要將nsarray中去除重複的元素,而存在nsarray中的元素不一定都是nsstring型別。今天想了想,加上朋友的幫助,想到兩種解決辦法,先分述如下。1.利用nsdictionary的allkeys allvalues 方法 可以將nsarray中的元素存入乙個字典,然後利用allkeys...

NSArray去除重複元素的方法

有時需要將nsarray中去除重複的元素,而存在nsarray中的元素不一定都是nsstring型別。今天想了想,加上朋友的幫助,想到兩種解決辦法,先分述如下。1.利用nsdictionary的allkeys allvalues 方法 可以將nsarray中的元素存入乙個字典,然後利用allkeys...

python 去除list重複元素的幾種方式

in 4 l d a f d b c d b c a 直接使用內建函式set 輸出順序可能有變化 in 5 set l out 5 in 6 type set l 型別 out 6 set 以list輸出 in 7 list set l out 7 f d a b c 以字典的key輸出 輸出順序可...