Dan*_*182 5 sorting string character swift
我需要按字母顺序保存文件。
现在我的代码正在按数字顺序保存文件
1.png
2.png
3.png
...
问题是当我再次阅读此文件时,我按照此处所述阅读了此文件
所以我正在考虑更改代码并不按数字顺序而是按字母顺序保存文件,如下所示:
a.png
b.png
c.png
...
z.png
aa.png
ab.png
...
但在 Swift 中,即使是字符类型也很难增加。
我该如何开始:
var s: String = "a"
Run Code Online (Sandbox Code Playgroud)
并以这种方式增加s ?
\n\n\n将此代码粘贴到 Playground 中并检查结果。
\n\nn
支持数字意味着您可以输入任何大数字,例如 99999999999999 享受吧!您可以取消注释
\nfor loop
代码来检查代码是否正常工作\n但不要忘记为counter
变量分配较小的值,否则 Xcode 将冻结。
var fileName:String = ""\nvar counter = 0.0\nvar alphabets = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]\nlet totalAlphaBets = Double(alphabets.count)\nlet numFiles = 9999\n\n\nfunc getCharacter(counter c:Double) -> String {\n\n var chars:String\n var divisionResult = Int(c / totalAlphaBets)\n let modResult = Int(c.truncatingRemainder(dividingBy: totalAlphaBets))\n\n chars = getCharFromArr(index: modResult)\n\n if(divisionResult != 0){\n\n divisionResult -= 1\n\n if(divisionResult > alphabets.count-1){\n chars = getCharacter(counter: Double(divisionResult)) + chars\n }else{\n chars = getCharFromArr(index: divisionResult) + chars\n }\n }\n\n return chars\n}\n\nfunc getCharFromArr(index i:Int) -> String {\n if(i < alphabets.count){\n return alphabets[i]\n }else{\n print("wrong index")\n return "\xef\xa3\xbf"\n }\n}\n\nfor _ in 0...numFiles {\n fileName = getCharacter(counter: counter)+".png"\n print(fileName)\n counter += 1\n}\n\nfileName = getCharacter(counter: Double(numFiles))+".png"\nprint(fileName)\n
Run Code Online (Sandbox Code Playgroud)\n