CharacterSet и CharacterSet.inverted распечатывают одинаково - PullRequest
3 голосов
/ 07 апреля 2019

Мне просто интересно, как работает (перевернутый) CharacterSet в Swift.

Давайте предположим, что у меня есть следующие два набора символов:

let invertedNumbers = CharacterSet(charactersIn: "0123456789").inverted
let numbers = CharacterSet(charactersIn: "0123456789")

Когда я регистрирую оба набора символов с помощью функции печати, как

print(numbers) 

в консоли отображается то же самое, что и

print(invertedNumbers)

А это

<CFCharacterSet Items(U+0030 U+0031 U+0032 U+0033 U+0034 U+0035 U+0036 U+0037 U+0038 U+0039)>

Но как они вообще могут быть одинаковыми? Я очень смущен, поскольку они не совсем. Когда я спрашиваю перевернутый, содержит ли он «а», он говорит: true . С другой стороны, не перевернутый говорит: false . И мне нравится, как это работает, но логирование инвертированного не глючит?

...