什么时候使用 NSString stringWithFormat;

When to use NSString stringWithFormat;

当我阅读如何在 iOS 中使用 Sqlite 时,我到达了以下行

NSString *query = [NSString stringWithFormat:@"SELECT * FROM 
tableName"];

我用谷歌搜索了一些教程和文档,以找出为什么使用以下方法而不是常规 NSString 对象:

stringWithFormat

为什么我们不能使用像下面这样的东西,因为不需要指定和特殊格式,如 %@ 或 %d?:

NSString *query = @"SELECT * FROM tableName";

如果您不打算从变量中获取值,@"SELECT * FROM tableName"这应该没问题。

如果您要在运行时替换 table 的名称,您将使用 stringWithFormat

NSString *query = [NSString stringWithFormat:@"SELECT * FROM %@", myTableName];