Skip to content

Instantly share code, notes, and snippets.

let arrayOfArrays = [ [1, 1], [2, 2], [3, 3] ]
let arrMultiple2 = arrayOfArrays.map { array in
return array.map { integer in
return integer * 2
}
} // [ [2, 2], [4, 4], [6, 6] ]
var flattened1 = arrayOfArrays.flatMap{ array in
return array.map { integer in
struct User{
let id: Int
let name: String
init?(dictionary: [String:Any]) {
guard
let id = dictionary["id"] as? Int,
let name = dictionary["name"] as? String
else {
return nil
}
let strs: [String?] = ["a", nil, "b", nil, "c"]
let result = strs.map { $0 }
print(result) // a nil b nil c
let strs: [String?] = ["a", nil, "b", nil, "c"]
let result = strs.flatMap { $0 }
print(result) // a b c
let scores = ["1", "2", "three", "4"]
let scoresInt = scores.map { Int($0) }
import UIKit
// Khai báo 1 protocol
protocol SetupConfig {}
extension SetupConfig {
@discardableResult
public func withConfig(config:(inout Self) -> Void) -> Self {
var mSelf = self
// Config đối tượng là 1 block mà ta truyền vào
// Khai báo 1 protocol
protocol SetupConfig {}
extension SetupConfig {
@discardableResult
public func withConfig(config:(inout Self) -> Void) -> Self {
var mSelf = self
// Config đối tượng là 1 block mà ta truyền vào
config(&mSelf)
return mSelf
private let customView: UIView = {
let view = UIView()
view.frame = CGRect(x: 0, y: 20, width: 150, height: 150)
view.backgroundColor = .red
return view
}()
extension UIView {
@IBInspectable var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
}
}
struct Customer: Decodable {
init(from decoder: Decoder) throws {
let values = try decoder.container(keyedBy: CodingKeys.self)
name = try values.decode(String.self, forKey: .name)
CustomerId = try values.decode(Int.self, forKey: .CustomerId)
buyCar = try values.decode([Car].self, forKey: .buyCar)
}
}
struct Car: Decodable {
struct Customer: Decodable {
var CustomerId: Int
var name: String
var buyCar: [Car]
enum CodingKeys: String, CodingKey {
case CustomerId = "id"
case name
case buyCar
}
}
let jsonString = "{\"id\":27,\"name\":\"Phong\",\"buyCar\":[{\"name\":\"VinFast LUX A2.0\",\"id\":1},{\"name\":\"Toyota Camry\",\"id\":2}]}"
let jsonData = jsonString.data(using: String.Encoding.utf8)
let jsonDecoder = JSONDecoder()
let customer = try? jsonDecoder.decode(Customer.self, from: jsonData!)