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

例如: 字符串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)

你可能感兴趣的:(编写一个程序,要求可以把一个字符串中的每一个字符,如果是大 写字母变小写字母,如果是小写字母变大写,如果是其他字符不变)