Swift:print() vs println() vs NSLog()
在这篇文章中,您将学习 Swift 语言中的日志记录方法。您还将学习它们之间有什么区别。
调试是在为 iOS 应用程序编写代码时最常见的实践。它使您能够调试逻辑、代码、错误等。Swift 提供内置库以在控制台上打印日志。
我们有一些选项可以在控制台上打印日志,例如 print()、println() 和 NSLog()。让我们尝试了解每个选项。
print()
在 Swift 中,print() 是一个函数,用于将消息打印到标准输出(例如,控制台)。它接受一个或多个参数,这些参数可以是任何值或表达式,默认情况下用空格分隔。例如,
示例
print 函数在调试应用程序时在 Xcode 控制台中打印消息。
import Foundation print("This is a string message") print(100) print("My lucky number is:", 17)
输出
This is a string message 100 My lucky number is: 17
println()
println() 函数的工作方式类似于 print(),但它在消息末尾添加了一个换行符。它在某些版本的 Swift 中可用,但已被弃用,取而代之的是 print()。println 函数在调试应用程序时在 Xcode 控制台中打印消息,就像 print 函数一样。
Println() 在 Swift 1.0 版中可用。之后,它被 print() 函数取代,该函数从 Swift 2.0 版开始可用。
NSlog()
NSLog() 是一个函数,在 iOS 和 macOS 的 Foundation 框架中可用。它的工作方式类似于 print(),但它会向输出添加其他信息,例如日期、时间和进程 ID。它用于调试目的,通常不用于生产代码。
它们之间的比较
print()、println() 和 NSLog() 之间的区别 |
||
---|---|---|
print() |
println() |
NSLog() |
直接在控制台上打印输出消息。 |
直接在控制台上打印输出消息。 |
不在控制台上直接打印输出消息。 |
Swift 2.0+ 版后可用 |
在 Swift 1.0 版中可用 |
在所有 Swift 版本中可用。 |
不包含其他信息。 |
不包含额外信息。 |
包含其他信息,如时间戳、标识符等, |
没有对日志类型的内置支持 |
没有对日志类型的内置支持 |
内置支持日志类型,如错误、信息、调试、跟踪等。 |
结论
通常,您应该在 Swift 中使用 print() 进行调试和日志记录。它使用简单,并且在所有平台上都能一致地工作。如果您需要记录更详细的信息,可以选择其他可用于 Swift 的日志记录库或框架。