我是新來的Objective-C和我在Java中不知道什麼時候你要輸出語句或變量或東西它的代碼是System.out.println("text");
Objective-C的101 /初級
所以,我想知道什麼當我想輸出文本或變量或類似的東西時,類似的代碼將用於Objective-C。
我已經在網上搜索,它說我們NSLog
但只記錄到控制檯,並沒有輸出給用戶我也試過printf
。我似乎無法找到有效的東西。
我是新來的Objective-C和我在Java中不知道什麼時候你要輸出語句或變量或東西它的代碼是System.out.println("text");
Objective-C的101 /初級
所以,我想知道什麼當我想輸出文本或變量或類似的東西時,類似的代碼將用於Objective-C。
我已經在網上搜索,它說我們NSLog
但只記錄到控制檯,並沒有輸出給用戶我也試過printf
。我似乎無法找到有效的東西。
使用printf
:
printf(@"%d", 4);
以上將無法正常工作。
它應該是:
printf("%d", 4); //without the @
輸出例如:
NSLog(@"Hello!");
輸出的對象:
NSString *myString = @"Hello!";
NSLog("%@", myString);
輸出字符串常量:
NSLog(@"This is my %@", @"string");
輸出一個類名稱:
NSLog(@"%@", NSStringFromClass(NSObject));
輸出一個NSError
:
NSLog(@"%@",[error localizedDescription]);
輸出一個浮動:
NSLog(@"%f", x);
僅舉幾例。欲瞭解更多信息,請閱讀this。
希望這會有所幫助。
附錄(關於「輸出到用戶」):
如果我理解正確的話,你想在屏幕上顯示一些文字?
順便說一句,在Java System.out.println("text");
將只輸出到控制檯,而不是在應用程序,無論你使用的是OSX,Ubuntu,Windows或Gentoo ....
有許多在線教程,但我們希望這將讓你開始:
在viewDidLoad
:
UILabel *myLabel = [[UILabel alloc] initWithFrame:(CGRect){{0.0f, 0.0f}, 140.0f, 25.0f}];
myLabel.text = @"Hello World!";
[self.view addSubview:myLabel];
要打印出的字符串:
NSLog(@"This is my string.");
如果你想要在打印輸出中包含變量,您可以使用NSLog()
中的字符串作爲格式化程序
NSString *myString = @"my string";
NSLog(@"This is %@", myString);
// OUTPUT: This is my string
%@
對於的myString變量的佔位符:你後面的字符串變量列表。其他佔位符包括:整數%i
或%d
,浮點數%f
,以及%@
也用於對象。
int age = 2;
float weight = 25.5f;
NSLog(@"At the early age of %d, the child weighed %f lbs.", age, weight);
// OUTPUT: At the early age of 2, the child weighed 25.5 lbs.
您使用的是iOS嗎? Mac OS X?還有別的嗎? –
我正在使用Mac OS X – user2989172
你是什麼意思printf不起作用?它適用於其他人。 – Chuck