Tôi đang làm việc thông qua các podcast trên iPhone của Stanford và có một số câu hỏi cơ bản.Cú pháp mục tiêu-C cơ bản: "% @"?
Đầu tiên: tại sao không có nối chuỗi dễ dàng? (hoặc tôi chỉ thiếu nó?)
Tôi cần trợ giúp với NSLog bên dưới và không biết nó đang làm gì (phần% @). Bạn chỉ cần thay thế những người ở bất cứ nơi nào bạn cần nối, và sau đó phân tách các giá trị ở cuối?
NSString *path = @"~";
NSString *absolutePath = [path stringByExpandingTildeInPath];
NSLog(@"My home folder is at '%@'", absolutePath);
trong khi với bất kỳ ngôn ngữ lập trình khác tôi muốn đã thực hiện nó như thế này:
NSLog(@"My home folder is at " + absolutePath);
Cảm ơn! (Ngoài ra, bất kỳ hướng dẫn/tham khảo tốt nào cho người quen thuộc với cú pháp kiểu Java/C#/etc chuyển sang Objective-C?)
tại sao không có nối chuỗi dễ dàng? '[@" foo "stringByAppendingString: @" bar "]'. Vâng thật đấy. Bạn cũng có thể xem các tài liệu cho 'NSMutableString' giúp một chút. –
Bạn có thực sự nghĩ rằng đó là "dễ" so với "foo" + "bar" không? Nhưng đó có phải là cách tốt hơn để làm điều đó hơn cách tiếp cận '% @' tôi đã làm không? – cksubs
'stringByAppendingString' làm cho mục đích rõ ràng hơn nhiều so với quá tải' + '. Hoặc là nó '.' để nối? Về mặt đó, nó dễ dàng hơn việc sử dụng toán tử bị quá tải sai. Bên cạnh đó, điều gì sẽ xảy ra nếu bạn cố gắng nối thêm một số nguyên vào một chuỗi? Ví dụ. '" foo "+ 6'. Điều gì về phụ thêm một chuỗi vào một số nguyên? Sử dụng 'stringByAppendingString' có nghĩa là tôi không phải suy nghĩ về nó. Có lẽ bạn không có nghĩa là * dễ dàng hơn * nhiều như * lazier *. – Duncan