SORU
4 HAZİRAN 2014, ÇARŞAMBA


Nasıl Apple'In swift listesinde öğenin dizin bulabilirim?

Bir liste arayarak öğe bir dizin bulmaya çalışıyorum. Herkes bunu nasıl biliyor mu?

Liste var.Startındex ve listesi.Python listesi gibi bir şey istiyorum değiştirir bu.("") metin . dizin

CEVAP
5 HAZİRAN 2014, PERŞEMBE


Kadar hızlı olduğu konusunda biraz daha işlevsel daha nesne yönelimli (ve Diziler yapılar, nesneler) işlevini kullanın "bulmak" ameliyat dizisi, döner isteğe bağlı bir değer, yani hazır ol tanıtıcı bir nil değeri:

let arr:Array = ["a","b","c"]
find(arr, "c")!              // 2
find(arr, "d")               // nil

Swift için güncelleme 2.0:

find eski işlevi Swıft 2.0 ile artık desteklenmiyor!

Swift ile 2.0, 5* *bir eleman fonksiyon CollectionType bir uzantısı olarak tanımlanan kullanarak dizin bulma yeteneği kazanır Array uygulayan ():

let arr = ["a","b","c"]

let indexOfA = arr.indexOf("a") // 0
let indexOfB = arr.indexOf("b") // 1
let indexOfD = arr.indexOf("d") // nil

Ayrıca, bir dizi bir koşulunu yerine getiren ilk öğe bulma CollectionType başka bir uzantısı tarafından desteklenmektedir:

let arr2 = [1,2,3,4,5,6,7,8,9,10]
let indexOfFirstGreaterThanFive = arr2.indexOf({$0 > 5}) // 5
let indexOfFirstGreaterThanOneHundred = arr2.indexOf({$0 > 100}) // nil

Bu iki işlevi find eskiden olduğu gibi isteğe bağlı değerler verir, unutmayın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Doug Bernards

    Doug Bernard

    7 Kasım 2007
  • George McCarron

    George McCar

    29 Mayıs 2013
  • Metheud

    Metheud

    9 EYLÜL 2006