swift – 如何将单个Character类型转换为大写?

swift – 如何将单个Character类型转换为大写?,第1张

概述我想做的就是将单个Character转换为大写,而不需要转换为String然后调用.uppercased().有没有内置的方法来做到这一点,或者我从C调用toupper()函数没有任何桥接的方式?我真的不认为我应该为了这么简单的事情而不顾一切. 要调用C toupper(),您需要获取Character的Unicode代码点.但是Character没有获取其代码点的方法(一个Character可能 我想做的就是将单个Character转换为大写,而不需要转换为String然后调用.uppercased().有没有内置的方法来做到这一点,或者我从C调用toupper()函数没有任何桥接的方式?我真的不认为我应该为了这么简单的事情而不顾一切.解决方法 要调用C toupper(),您需要获取Character的Unicode代码点.但是Character没有获取其代码点的方法(一个Character可能包含多个代码点),因此您必须将Character转换为String以获取其任何代码点.

所以你真的必须转换为String才能到达任何地方.除非您将角色存储为UnicodeScalar而不是角色.在这种情况下,您可以这样做:

assert(unicodeScalar.isASCII) // toupper argument must be "representable as an unsigned char"let uppercase = UnicodeScalar(toupper(CInt(unicodeScalar.value)))

但这并不比简单地使用String更具可读性:

let uppercase = Character(String(character).uppercased())
总结

以上是内存溢出为你收集整理的swift – 如何将单个Character类型转换为大写?全部内容,希望文章能够帮你解决swift – 如何将单个Character类型转换为大写?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1010223.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存