Проверка на наличие дубликатов NSArray - PullRequest
1 голос
/ 05 июля 2010

Может ли кто-нибудь помочь мне с некоторым кодом, чтобы проверить наличие дубликатов в NSArray на предмет наличия C. Я сделал то, что хочу в vb.net, но перевод для меня труден.

'True means no duplicates'
Public Shared Function checkDuplicate(ByVal list As ArrayList) As [Boolean]
    Dim [set] As New HashSet(Of Integer)
    For i As Integer = 0 To list.Count - 1
        Dim val As Boolean = [set].Add(list(i))
        If val = False Then
            Return val
        End If
    Next
    Return True
End Function

1 Ответ

8 голосов
/ 05 июля 2010
static BOOL CheckDuplicate( NSArray* array )
{
  return [[NSSet setWithArray: array] count] == [array count];
}

PS вы не можете сделать точный вариант для одного перевода вашего кода, потому что [NSMutableSet addObject:] не говорит вам, было ли что-либо добавлено.

PPS Я только что заметил "истинное средство"нет дубликатов", поэтому я изменил <в == в моем коде.Но было бы лучше выбрать более понятное имя функции, например HasNoDuplicates. </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...