例如: 字符串China23beiJing 經(jīng)過程序轉(zhuǎn)換為cHINA23BEIjING
/*
函數(shù),將大寫字母變小寫,小寫字母變大寫,其他不變
*/
func changeCharcter (chNum:Character) -> Character {
//將字符轉(zhuǎn)成整數(shù)
var chStr = String(chNum)? //將字符轉(zhuǎn)成字符串
var num:UInt32 = 0? //用于接受字符整數(shù)值的變量
for item in chStr.unicodeScalars {
num = item.value? ? //循環(huán)只執(zhí)行一次,獲取字符的整數(shù)的值
}
/*
如果是大小寫字母,轉(zhuǎn)換數(shù)值
*/
//如果是大寫字母
if num >= 65 && num <= 90 {
num += 32
}
//如果是小寫字母
else if num >= 97 && num <= 122 {
num -= 32
}
/*
將整數(shù)轉(zhuǎn)換為字符
*/
let newChNum = Character(UnicodeScalar(num)!)
return newChNum
}
var str = "China23beiJing "
var i = 0? //表示偏移量(循環(huán)變量初始值)
while i < str.characters.count {? ? //循環(huán)條件,包含循環(huán)變量的終止值
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;? //循環(huán)變量值變化
}
print(str)