Answers:
转换Int
为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)
Int
toString()
至少在Xcode 6.2编辑中似乎没有方法:我看到有一个全局toString
方法(not Int.toString()
),有人知道使用String()
构造函数的好处吗?
String(Int?)
至少在Swift 2 中写了“ Optional(Int)”,这并不是您的意思。改用Int?.description
String(describing: x)
检查以下答案:
let x : Int = 45
var stringValue = "\(x)"
print(stringValue)
String
已经有构造函数接受时,这是一个丑陋且不必要的解决方法Int
String
有一个接受的构造函数时,不需要使用字符串插值Int
。它更加清晰和简洁。
这是4种方法:
var x = 34
var s = String(x)
var ss = "\(x)"
var sss = toString(x)
var ssss = x.description
我可以想象有些人会遇到ss问题。但是,如果您要构建包含其他内容的字符串,那为什么不呢。
var ss = "\(x)"
例子正是他们建议如何将双精度转换为字符串的例子。我认为这很容易而且很棒。
String(describing:)
除调试外,不得将其用于其他任何用途。它不是普通的String初始化器。
在Swift 3.0中:
var value: Int = 10
var string = String(describing: value)
String(describing:)
除调试外,不得将其用于其他任何用途。它不是普通的String初始化器。
斯威夫特4:
let x:Int = 45
let str:String = String(describing: x)
Developer.Apple.com>字符串> init(描述:)
String(describing :)初始化程序是将任何类型的实例转换为字符串的首选方法。
String(describing:)
除调试外,不得将其用于其他任何用途。它不是普通的String初始化器。
describing
这里的方法是... 描述其内容。它给出了描述。有时与转换相同,有时不同。提供一个可选项describing
,您将看到结果……这将不是转换。有一种简单的专用转换方式:使用普通的String初始化程序,如其他答案所述。阅读完整的页面链接到:看到此方法搜索说明使用不同的方式,如果你希望其中的一些会给出错误的结果准确的转换..
仅出于完整性考虑,您还可以使用:
let x = 10.description
或任何其他支持描述的值。
斯威夫特4:
尝试不带Optional()的标签显示值字的值。
这里x是使用的Int值。
let str:String = String(x ?? 0)
String(describing:)
除调试外不得用于其他任何用途。它不是普通的String初始化器。
String()
初始化程序即可。但是,请不要给它一个可选的,先打开包装的包装。或者,例如在您的示例中,使用??
。像这样:let str = String(x ?? 0)
为了节省时间和以后的麻烦,您可以进行Int扩展。通常,我创建一个共享代码文件,在其中放置扩展名,枚举和其他有趣的东西。扩展代码如下所示:
extension Int
{
func toString() -> String
{
var myString = String(self)
return myString
}
}
然后,当您要将int转换为字符串时,可以执行以下操作:
var myNumber = 0
var myNumberAsString = myNumber.toString()
toInt
还是toInt()
。
myNumber.description
。无需任何扩展。
在swift 3.0中,这就是我们如何转换Int
为String
和的String
方式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)!
integerValue
的类型为Int
。则不能为其设置nil值。所以编译器告诉您解开它。如果您想避免这种情况,请像使用它let integerValue = Int(stringValue)
。这样您就不会有问题。这么晚才回复很抱歉。
多种方法可以做到这一点:
var str1:String="\(23)"
var str2:String=String(format:"%d",234)
我使用这种简单的方法
字符串到整数:
var a = Int()
var string1 = String("1")
a = string1.toInt()
从Int到String:
var a = Int()
a = 1
var string1 = String()
string1= "\(a)"
对于那些想要将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)
}
String
初始化可以采取UnicodeScalar
。
将String转换为Int
var numberA = Int("10")
Print(numberA) // It will print 10
将Int转换为String
var numberA = 10
第一种方式)
print("numberA is \(numberA)") // It will print 10
第二路)
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的整数
let Str = "12"
let num: Int = 0
num = Int (str)
toString
下面的答案中所示的功能。