Bibi's DevLog π€π
[Swift / Array] enumerated() - λ°°μ΄μ μ΄κ±°νλ μνμ€ λ§λ€κΈ° λ³Έλ¬Έ
[Swift / Array] enumerated() - λ°°μ΄μ μ΄κ±°νλ μνμ€ λ§λ€κΈ°
λΉλΉ bibi 2022. 9. 23. 21:44enumerate μ΄κ±°νλ€
(n, x)μμ μνμ€λ₯Ό λ°νν©λλ€.
- nμ 0λΆν° μμνλ μ°μμ μΈ integerλ₯Ό μλ―Ένλ©°,
- xλ μνμ€μ μμλ₯Ό λνλ λλ€.
μ μΈ
func enumerated() -> EnumeratedSequence<Self>
리ν΄κ°
μνμ€λ₯Ό μ΄κ±°νλ μμ μνμ€λ₯Ό λ°νν©λλ€.
μκ°λ³΅μ‘λ : O(1)
μ€λͺ
μ΄ μμλ “Swift” λΌλ λ¬Έμμ΄μ λ¬Έμλ₯Ό μ΄κ±°νκ³ , λ¬Έμμ΄ μμ κ° λ¬Έμλ₯Ό κ·Έ μ리μ ν¨κ» μΆλ ₯ν©λλ€.
for (n, c) in "Swift".enumerated() {
print("\(n): '\(c)'")
}
// Prints "0: 'S'"
// Prints "1: 'w'"
// Prints "2: 'i'"
// Prints "3: 'f'"
// Prints "4: 't'"
컬λ μ
μ μ΄κ±°ν λ, κ° μμ μ μλΆλ μ΄κ±°νμ counterμ΄μ§λ§, λ°λμ μμ μ΄λ£¨λ κ°μ μΈλ±μ€μΈ κ²μ μλλλ€. μ΄λ¬ν counterλ 0λΆν° μμνκ³ , μ μλ‘ μΈλ±μ±λλ 컬λ μ
μ μΈμ€ν΄μ€μ λν΄μλ§ μΈλ±μ€λ‘ μ¬μ©λ μ μμ΅λλ€(μλ₯Ό λ€μ΄ Arrayλ ContiguousArrayκ°μ). λ€λ₯Έ 컬λ μ
μ λν counterλ out of rangeκ° λ°μνκ±°λ μΈλ±μ€λ‘ μ°λ € ν λ νμ
μ΄ λΆμ μ ν μ μμ΅λλ€. 컬λ μ
μ μΈλ±μ€λ€κ³Ό ν¨κ» μμλ€μ μννκ³ μΆλ€λ©΄, zip(_:_:)
ν¨μλ₯Ό μ¬μ©νμμμ€.
μλ μμλ 5μ μ΄νμ μ΄λ¦μ μΈλ±μ€λ₯Ό μ μ₯νλ 리μ€νΈλ₯Ό ꡬμ±νλ©΄μ, Setμ μμμ μΈλ±μ€λ€μ μννκ³ μμ΅λλ€.
let names: Set = ["Sofia", "Camilla", "Martina", "Mateo", "Nicolás"]
var shorterIndices: [Set<String>.Index] = []
for (i, name) in zip(names.indices, names) {
if name.count <= 5 {
shorterIndices.append(i)
}
}
μ΄μ shorterIndices
λ°°μ΄μ΄ names
Setμ 짧μ μ΄λ¦μ μΈλ±μ€λ€μ κ°μ§κ³ μκΈ° λλ¬Έμ, setμ μμμ μ κ·ΌνκΈ° μν΄ κ·Έ μΈλ±μ€λ€μ νμ©ν μ μμ΅λλ€.
for i in shorterIndices {
print(names[i])
}
// Prints "Sofia"
// Prints "Mateo"
'π±π iOS > π Apple Developer Documentation' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Swift] type(of:) (0) | 2022.09.28 |
---|---|
[Swift / Array] swapAt(_:_:) (0) | 2022.09.28 |
[π / UIKit] UINavigationController (1) | 2022.09.23 |
About the App Launch Sequence μ± μ€ν μνμ€μ λνμ¬ (0) | 2022.08.27 |
Dictionary - subscript(_: default:) (0) | 2022.08.25 |