博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift之格式化字符串、print格式化打印、debug调试
阅读量:4290 次
发布时间:2019-05-27

本文共 1683 字,大约阅读时间需要 5 分钟。

 

init(format:_:)方法的语法形式如下:

convenience init(format: NSString, _ args: CVarArg...)

其中,format用来指定一个需要格式化的字符串,args是向format中填空的。

 let s:String=String.init(format:"ddd%.2f",1.2233)

             let ss:String=String.init(format:"ddd%@","1.2233")

            let sss:String=String.init(format:"ddd%tu",12233)

            print("\(s)--\(ss)--\(sss)")

 

 

init(format:locale:_:)方法和init(format:_:)方法实现的功能是一样的,只不过它比init(format:_:)方法多了一个locale参数,此参数可以用来设置语言环境(每一个国家都有自己的语言环境,当开发者在开发程序时,使用适当的语言环境是很重要的),其语法形式如下:

convenience init(format: NSString, locale: Locale?, _ args: CVarArg...)

 

var l=Locale.current

var str3=NSString(format: str1,locale: l,str2)     

 

 

 

 

localizedStringWithFormat(_:_:)方法和init(format:locale:_:)、init(format:_:)方法唯一的不同之处在于localizedStringWithFormat(_:_:)方法是一个类方法,其语法形式如下:

class func localizedStringWithFormat(_ format: NSString, _ args: CVarArg...) -> Self

其中,format用来指定一个需要格式化的字符串,args是向format中填空的。

print(NSString.localizedStringWithFormat("This is %@", str2)) 

 

 

 

================

 

//print函数使用

print("hellow")

let x = 1, y = 2, z = 3

print(x,y,z)

 

let b = true

print(b)//true

 

print(x,y,z, separator: "--")

//1--2--3

//separator设置分割符,默认是" "

 

print(x,y,z, separator: "--", terminator:":)")

//1--2--3:)

//terminator结束符,默认为回车

 

 

print(y,"*",z,"=",y*z)

//2 * 3 = 6

//字符串插值

print("\(y) * \(z) = \(y*z)")

//2 * 3 = 6

 

 

 

FILE    String    包含这个符号的文件的路径

LINE    Int    符号出现处的行号

COLUMN    Int    符号出现处的列

FUNCTION    String    包含这个符号的方法名字

因此,我们可以通过使用这些符号来写一个好一些的 Log 输出方法:

 

func printLog<T>(message: T,

                 file: String = __FILE__,

                 method: String = __FUNCTION__,

                 line: Int = __LINE__)

{

    print("\((file as NSString).lastPathComponent)[\(line)], \(method): \(message)")

}

 

==================debug调试

 

参考:https://www.jianshu.com/p/55ce421e47e9

==============NSNumber的格式化===============

 

 

转载地址:http://hnmgi.baihongyu.com/

你可能感兴趣的文章
大型高并发与高可用缓存架构总结
查看>>
javascript设计模式-工厂模式(4)
查看>>
javascript设计模式-组合模式(6)
查看>>
javascript设计模式-门面模式(7)
查看>>
javascript设计模式-享元模式(10)
查看>>
javascript设计模式-代理模式(11)
查看>>
Executor相关源码分析
查看>>
react之setState解析
查看>>
elasticsearch7.3版本已经不需要额外安装中文分词插件了
查看>>
【重大好消息】elasticsearch 7.3版本已经可以免费使用x-pack就可以设置账号和密码了,让你的数据不再裸奔
查看>>
解决使用logstash中jdbc导入mysql中的数据到elasticsearch中tinyint类型被转成布尔型的问题的方法
查看>>
elasticsearch7.3版本环境搭建(一)elasticsearch安装和配置
查看>>
SEO基本功:站内优化的一些基本手段
查看>>
centos6系列和7系列如何对外开放80,3306端口号或者其他端口号
查看>>
为什么您宁愿吃生活的苦,也不愿吃学习的苦?为什么你不愿意去学习呢
查看>>
解决elasticsearch7.3版本安装过程中遇到的包括内存不够、线程不够等问题
查看>>
日常项目测试用例检查点(来自一线测试人员的吐血总结)
查看>>
网站建设之域名注册和域名备案
查看>>
解决bootstrap时间输入框总被浏览器记住的记录遮挡住的问题
查看>>
git将一个分支完全覆盖另外一个分支如:dev分支代码完全覆盖某一个开发分支
查看>>