我只是对Swift中的println()
方法感到好奇。我应该通过value: T
。实际上,我可以在那里写:float
,string
,char
,int
,甚至是NSData
。如何创建和实现这样的类型?
编辑:对于那些不了解我要求的人:value: T
什么是 FileWriter writer = new FileWriter(outPutFile);
br = new BufferedReader(new FileReader(csvFileToRead));
writer.append("[");
while ((line = br.readLine()) != null)
{
String[] products = line.split(splitBy);
writer.append(" {proximity__c= " + products[0] + " , longitude__c="+products[1] +" , latitude__c=" + products[2] + "},");
writer.append("\n");
}
writer.append("]");
writer.flush();
writer.close();
以及如何在我的职能中使用它?
答案 0 :(得分:3)
T
表示println
接受任何类型的参数。
float
,string
,char
,int
等将转换为字符串。
对象(例如NSData
或UIImage
)将调用其description
方法,并返回该方法。 NSData
将为您提供数据的十六进制表示,而UIImage
会打印有关图像的一些详细信息(宽度,高度等)。
如果您想打印自己定义的课程,则应考虑实施描述方法。否则你只需要获取类名和内存地址。
此外,您可以在字符串中嵌入任何类型的对象,并将其与println()结合使用:
let a = 7
let b = 6
let c = a * b
println("\(a) times \(b) is \(c)")
// 7 times 6 is 42
答案 1 :(得分:1)
我举个例子。假设aFloatVar
是Float类型的变量,并且您希望使用适当的提示编写它。这就是你要写的:
println("The Value \(aFloatVar as Float)")
您也可以在同一行中使用两个变量。假设crd
是CGPoint,并且您希望将其写为x和y。以下是您必须编写的代码:
println("Coordinate X = \(crd.x as CGFloat) Y = \(crd.y as CGFloat) ")
这就是我知道你必须写的而不是Value:T in swift。
答案 2 :(得分:0)
我几乎可以肯定,在内部,它只是调用<style>
@media (max-width: 600px) {
#wego-searchbox {
width: 100%;
}
}
</style>
。
但是如果你想在你的方法中处理许多类型,你应该检查它是什么类型,并相应地处理它。