- 编写一个程序,要求可以把一个字符串中的每一个字符,如果是大写字母变小写字母,如果是小写字母变大写,如果是其他字符不变
- 例如: 字符串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)