Làm thế nào để bạn nhận được kích thước của một NSArray
và in nó trong bảng điều khiển bằng cách sử dụng NSLog
?Kích thước của một NSArray
Trả lời
int size = [array count];
NSLog(@"there are %d objects in the array", size);
Về mặt kỹ thuật, nó phải là 'NSUInteger size = ...', nhưng vẫn là +1. :) –
Bạn sẽ phải truyền nó tới một kiểu được printf hỗ trợ để in nó, vì printf không có định dạng thông số cho NS [U] Integer. – Chuck
@Chọn tài liệu nói để sử dụng '% ld' và'% lu' cho 'NSInteger' và' NSUInteger' tương ứng. http://developer.apple.com/mac/library/documentation/cocoa/conceptual/Strings/Articles/formatSpecifiers.html#//apple_ref/doc/uid/TP40004265-SW5 –
Hãy xem bài này cho kích thước mảng câu hỏi của bạn
Length of an Array in Objective C
Sử dụng NSLog ghi vào giao diện điều khiển ...
NSLog(@"The array size is %@", arraySize);
Kích thước có thể được xác định bằng cách gửi 'đếm' đối với cá thể NSArray và in tới bàn điều khiển có thể được thực hiện qua NSLog(), ví dụ:
NSArray * array = [NSArray arrayWithObjects:@"one", @"two", @"three", nil];
NSLog(@"array size is %d", [array count]);
Một câu trả lời cho câu trả lời khác:
Bạn không thể có được kích thước của mảng bằng megabyte, ít nhất là không phải không có làm một số khó khăn, không được hỗ trợ * C voodoo. NSArray
là một cụm lớp, có nghĩa là chúng tôi không biết cách nó được triển khai thực hiện nội bộ. Thực tế, việc triển khai được sử dụng có thể change depending on how many items are in the array. Hơn nữa, kích thước của mảng được tách rời khỏi kích thước của các đối tượng mảng tham chiếu, vì các đối tượng đó sống ở nơi khác trên heap. Ngay cả cấu trúc giữ con trỏ đối tượng không phải là "phần" về mặt kỹ thuật của mảng, vì nó không nhất thiết phải là calloc
'd ngay bên cạnh số thực tế NSArray
trên heap.
Nếu bạn muốn kích thước của mảng struct chính nó, cũng đó là dường như chỉ 4 byte:
NSLog(@"Size: %d", sizeof(NSArray));
Prints:
2010-03-24 20:08:33.334 EmptyFoundation[90062:a0f] Size: 4
(Cấp, đó không phải là một đại diện đàng hoàng, vì NSArray
là có lẽ chỉ là một giao diện trừu tượng cho một loại đối tượng khác, thường là một cái gì đó giống như một NSCFArray
. Nếu bạn nhìn vào NSArray.h
, bạn sẽ thấy rằng một NSArray
không có biến thể hiện. ething đó là nghĩa vụ phải giữ các đối tượng khác, eh?)
*
Bằng "không được hỗ trợ", tôi có nghĩa là "không được khuyến khích", "đào sâu vào chủ nghĩa thần bí bên trong của nhóm lớp" và "API không có giấy tờ và riêng tư, nếu nó còn tồn tại"
Trong Swift 4
hãy a = [ "a", "b"]
a.count // 2
- 1. Tạo một NSArray trống
- 2. Lấy kích thước của một listview
- 3. Tính toán kích thước của một mảng
- 4. C++/Kích thước của một vector 2d
- 5. Kích thước của một bản ghi? SQL
- 6. Lấy kích thước của một mảng 2D
- 7. Kích thước của chuỗi
- 8. Kích thước của MessageBox
- 9. Lấy kích thước của các kích thước trong mảng
- 10. C++ ý nghĩa của việc kích thước của một mảng
- 11. Kích thước của cột VARCHAR
- 12. Kích thước của ViewPager Android
- 13. Giảm kích thước của .rodata
- 14. Kích thước VARCHAR của MySQL?
- 15. lấy kích thước của nswindow
- 16. kích thước của mảng NumPy
- 17. Kích thước của Clyther overhead?
- 18. C++ Kích thước của mảng
- 19. Kích thước của GLSL boolean
- 20. Lấy kích thước của ZipInputStream
- 21. Thay đổi kích thước một phần tử kích hoạt sự kiện thay đổi kích thước của cửa sổ
- 22. kích thước của mảng và kích thước của con trỏ nhân vật nhân vật
- 23. Kích thước của một đối tượng trong thời gian chạy
- 24. Kích thước bộ nhớ của một ArrayList trong Java
- 25. Tăng kích thước của một tập tin sử dụng mmap
- 26. Android & Dalvik - Nhận kích thước của một đối tượng
- 27. Tính toán kích thước của một email trong .NET
- 28. python. lấy kích thước của một đối tượng
- 29. WPF DataGrid kích thước nội dung của một cột templated
- 30. Thiết lập thuộc tính kích thước của một Ember.TextField
http://developer.apple.com/mac/library/ tài liệu/Cocoa/Tham khảo/Nền tảng/Lớp học/NSArray_Class/NSArray.html # // apple_ref/occ/instm/NSAr ray/count – Nippysaurus