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

  • 1881 Animation

    1881 Animati

    5 EKİM 2013
  • Joshua Bane

    Joshua Bane

    24 Temmuz 2007
  • The Brister

    The Brister

    10 ŞUBAT 2008