簡體   English   中英

等同於Objective-C的Java數據類型

[英]Java Data Type Equivalent to Objective-C

在Objective-C中此Java數據類型的等效項是什么

short []數據;
byte []數據;
char []數組;
LinkedList <byte []> varName
LinkedList <short []> varName;

我對此並不陌生,我會感謝您的幫助。

謝謝。

參見: http : //www.techotopia.com/index.php/Objective-C_2.0_Data_Types
支持短數組

short[] data; //works

參見: 相當於java字節的Objective-C []
和: http : //developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSMutableData_Class/Reference/NSMutableData.html
字節數組替代

NSString *myString = @"string for data1";
const char *utfMyString = [myString UTF8String];
NSMutableData *data1 = [NSMutableData dataWithBytes:utfMyString length:strlen(utfMyString)+1];

請參閱: Objective-C中的字節數組
支持char數組

char byteArray[] = {0x12,0x13,0x53}; //works

不支持LinkedList
我在CocoaDev上找到了一些替代方法,請在此處閱讀更多信息: http : //www.cocoadev.com/index.pl? LinkedList
並閱讀此書,我也認為您不必總是使用LinkedList解決方案: 在Objective C中創建鏈接列表

前幾個示例與Objective-C基本相同,但有一些保留:

short data[] = {...};
byte data[] = {...};
char data[] = {...};

保留意見是這些不是動態數組 編譯器需要知道它們的大小。 也就是說,如果使用T arr[]表示法,則需要立即為其分配一個值。 否則,顯式指定其大小(如T arr[1000] )。 您還可以選擇將它們表示為指針( T* arr )。

在Objective-C中,我們通常希望具有比普通C數組更高的靈活性,因此我們經常將NSArray用於類似任務。 如果尚未完成,請查閱NSArray文檔

至於鏈表,Cocoa沒有內置的鏈表實現。 最終在Objective-C慣用語中最終使用鏈接列表的情況很少見,但是如果需要的話,實現起來確實很容易。 要知道,Objective-C中具有參數多態性; 因此,您不能在其他類型上泛化一個類型,這對於LinkedList保留各種類型的值是必要的。 而且由於無法將基元連貫地轉換為對象,因此無法創建可以LinkedList元或對象的通用LinkedList類(您可以在void*下統一基元,但不能統一對象,因為它們需要內存管理)。

這是整數數組。 只需將其更改為short或char。

在目標C中創建整數數組

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM