Преобразование Int в строку в Swift
19 ответов
преобразование Int
to String
:
let x : Int = 42
var myString = String(x)
и наоборот - преобразование String
до Int
:
let myString : String = "42"
let x: Int? = myString.toInt()
if (x != nil) {
// Successfully converted String to Int
}
или если вы используете Swift 2 или 3:
let x: Int? = Int(myString)
вот 4 метода:
var x = 34
var s = String(x)
var ss = "\(x)"
var sss = toString(x)
var ssss = x.description
Я могу себе представить, что у некоторых людей будет проблема с ss. Но если вы хотели создать строку, содержащую другой контент, то почему бы и нет.
просто для полноты, вы также можете использовать:
let x = 10.description
или любое другое значение, поддерживающее описание.
чтобы сэкономить время и хлопот в будущем вы можете сделать расширение Int. Обычно я создаю общий файл кода, где я помещаю расширения, перечисления и другие интересные вещи. Вот как выглядит код расширения:
extension Int
{
func toString() -> String
{
var myString = String(self)
return myString
}
}
затем, когда вы хотите, чтобы преобразовать int в строку, вы можете просто сделать что-то вроде:
var myNumber = 0
var myNumberAsString = myNumber.toString()
по какой причине принятый ответ не работа для меня. Я пошел с этим подходом:
var myInt:Int = 10
var myString:String = toString(myInt)
на swift 3.0 вот как мы можем конвертировать Int
to String
и String
to Int
//convert Integer to String in Swift 3.0
let theIntegerValue :Int = 123 // this can be var also
let theStringValue :String = String(theIntegerValue)
//convert String to Integere in Swift 3.0
let stringValue : String = "123"
let integerValue : Int = Int(stringValue)!
Swift 2:
var num1 = 4
var numString = "56"
var sum2 = String(num1) + numString
var sum3 = Int(numString)
Swift 4:
попытка показать значение в label без дополнительно() слово.
здесь x-это значение Int.
let str:String = String(x ?? 0)
iam, используя этот простой подход
строка в Int:
var a = Int()
var string1 = String("1")
a = string1.toInt()
и от Int до String:
var a = Int()
a = 1
var string1 = String()
string1= "\(a)"
преобразовать Unicode Int в String
для тех, кто хочет преобразовать Int в строку Unicode, вы можете сделать следующее:
let myInteger: Int = 97
// convert Int to a valid UnicodeScalar
guard let myUnicodeScalar = UnicodeScalar(myInteger) else {
return ""
}
// convert UnicodeScalar to String
let myString = String(myUnicodeScalar)
// results
print(myString) // a
или же:
let myInteger: Int = 97
if let myUnicodeScalar = UnicodeScalar(myInteger) {
let myString = String(myUnicodeScalar)
}
для преобразования строки в Int
var numberA = Int("10")
Print(numberA) // It will print 10
чтобы скрыть Int в строку
var numberA = 10
1-й способ)
print("numberA is \(numberA)") // It will print 10
2-й способ)
var strSomeNumber = String(numberA)
или
var strSomeNumber = "\(numberA)"
в swift 3.0 вы можете изменить целое число на строку, как указано ниже
let a:String = String(stringInterpolationSegment: 15)
другой способ -
let number: Int = 15
let _numberInStringFormate: String = String(number)
/ / или любое целое число вместо 15