Java数据类型等同于Objective-C

时间:2011-09-15 21:41:38

标签: java objective-c ios

Objective-C

中此Java数据类型的等价物

短[]数据;
byte []数据;
char []数组;
链表< byte []> varName的
链表<短[]>的varName;

我是新手,我会帮助你。

谢谢。

3 个答案:

答案 0 :(得分:0)

见:http://www.techotopia.com/index.php/Objective-C_2.0_Data_Types
支持短数组

short[] data; //works

见:Objective-C equivalent for java byte[]
并且: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];

见:Byte array in objective-c
支持 char数组

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

不支持LinkedList
我在CocoaDev上找到了一些替代品,请在此处阅读更多内容:http://www.cocoadev.com/index.pl?LinkedList
并且还读到了这一点,我认为你并不总是需要使用LinkedList解决方案:Creating Linked Lists in Objective C

答案 1 :(得分:0)

前几个例子在Objective-C中基本相同,只有一些保留:

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

预订是这些不是动态数组。编译器需要知道它们的大小;也就是说,如果使用T arr[]表示法,则需要立即为其指定值。否则,明确指定其大小(如T arr[1000]中所示)。您还可以选择将这些表示为指针(T* arr)。

在Objective-C中,我们通常喜欢比普通C数组给我们更大的灵活性,因此我们经常使用NSArray来执行类似的任务。如果您还没有,请查看documentation on NSArray

对于链表,Cocoa没有内置的链表实现。实际上你最终会使用Objective-C习语中的链接列表,这很少见,但如果你需要它,它实际上很容易实现。请注意,Objective-C 具有参数多态性;因此,您不能将类型概括为其他类型,因为LinkedList需要保存各种类型的值。由于基元不能连贯地转换为对象,因此无法创建可以保存基元或对象的通用LinkedList类(可以统一void*下的基元,而不是对象,因为它们需要记忆管理)。

答案 2 :(得分:-1)

这是一个整数数组。只需将其更改为简短或字符。

Create an array of integers property in Objective C