编写一个程序,要求可以把一个字符串中的每一个字符,如果是大 写字母变小写字母,如果是小写字母变大写,如果是其他字符不变

例如: 字符串China23beiJing 经过程序转换为cHINA23BEIjING

/*

函数,将大写字母变小写,小写字母变大写,其他不变

*/

func changeCharcter (chNum:Character) -> Character {

//将字符转成整数

var chStr = String(chNum)  //将字符转成字符串

var num:UInt32 = 0  //用于接受字符整数值的变量

for item in chStr.unicodeScalars {

num = item.value    //循环只执行一次,获取字符的整数的值

}

/*

如果是大小写字母,转换数值

*/

//如果是大写字母

if num >= 65 && num <= 90 {

num += 32

}

//如果是小写字母

else if num >= 97 && num <= 122 {

num -= 32

}

/*

将整数转换为字符

*/

let newChNum = Character(UnicodeScalar(num)!)

return newChNum

}

var str = "China23beiJing "

var i = 0  //表示偏移量(循环变量初始值)

while i < str.characters.count {    //循环条件,包含循环变量的终止值

var str1 = str[str.index(str.startIndex, offsetBy: i)]

//    str1 = changeCharcter(chNum: str1)

str.replaceSubrange(str.index(str.startIndex, offsetBy:

i)...str.index(str.startIndex, offsetBy: i),

with: String(changeCharcter(chNum: str1)))

i+=1;  //循环变量值变化

}

print(str)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容