I usually use guard (or sometimes if) and an early return: func run() { guard !names.isEmpty else { /* stuff */ return } /* stuff with names */ }
l8r Sean > On Feb 1, 2017, at 12:18 PM, Nicolas Fezans via swift-evolution > <swift-evolution@swift.org> wrote: > > I tend to write this kind of treatment the other way around... > > if names.isEmpty { > // do whatever > } // on other cases I might have a few else-if to treat other cases that need > special treament > else { > for name in names { > // do your thing > } > } > > > Nicolas Fezans > > > > On Wed, Feb 1, 2017 at 6:31 PM, Saagar Jha via swift-evolution > <swift-evolution@swift.org> wrote: > If you’re fine with a couple extra characters, you can use .isEmpty: > > for name in names { > // do your thing > } > if names.isEmpty { > // do whatever > } > > It’s a bit more typing, but I feel it makes your intentions more clear. > > Saagar Jha > >> On Feb 1, 2017, at 8:48 AM, Chris Davis via swift-evolution >> <swift-evolution@swift.org> wrote: >> >> Hi, >> >> Often when I’m programming I stumble upon this scenario: >> >> I have a list of items that may or may not be empty - if it’s full, I do one >> thing, if it’s empty I do something else, my code looks like this: >> >> class Example_1 >> { >> let names = ["Chris", "John", "Jordan"] >> >> /// Loop over names, if no names, print no names >> func run() >> { >> for name in names >> { >> print(name) >> } >> >> if names.count == 0 >> { >> print("no names") >> } >> } >> } >> >> let exampleOne = Example_1() >> exampleOne.run() >> >> However, Personally, I would find it more pleasing to write something like >> this: >> >> class Example_2_Proposed >> { >> let names:[String] = [] >> >> /// Loop over names, if no names, print no names >> func run() >> { >> for name in names >> { >> print(name) >> } else { >> print("no names") >> } >> } >> } >> >> let exampleTwo = Example_2_Proposed() >> exampleTwo.run() >> >> The difference here is a “for-else” type syntax where if there were no items >> in the array it would simply fall through to the else statement. >> >> What would be the pros/cons of introducing such syntax? >> >> Is there’s a way of doing something similar in swift already? >> >> Thanks >> >> Chris >> >> >> >> >> _______________________________________________ >> swift-evolution mailing list >> swift-evolution@swift.org >> https://lists.swift.org/mailman/listinfo/swift-evolution > > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution > > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution _______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution