(有码)数组

不可变数组
创建不可变数组: NSArray *array = [NSArray array];

创建数组时,如果添加元素中有nil出现,后面元素将不会存入数组。例:
NSArray *array = @[@"1", @"2", nil, @"3"]; //此时array = @[@"1", @"2"];

获取元素
id object = [array objectAtIndex:0]; //获取从下标以后的元素

遍历数组
for(NSString *string in array) //forin遍历 遍历内容要根据数组元素类型决定

NSEnumerator *enumerator = [array objectEnumerator]; //用枚举器遍历数组
id object = [enumerator nextObject]; //访问数组第一个元素
while(object){
object = [enumerator nextObject];
NSLog(@"%@",object);
}

[array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop)]{ //用枚举块遍历数组
}];

将数组元素分类
将类中属性添加到数组
Person *person1 = [Person personWithName:@"xiaoli" age:15];
Person *person2 = [Person personWithName:@"xiaohua" age:20];
. . . . . .
. . . . . .
. . . . . .
Person *person  = [Person personWithName:@"name"  age:22];
array = @[person1, person2, ...,person];
//将同一类型的数组进行比较(默认是升序排列,按方法中类型排序)
NSArray *result = [array sortArrayUsingSelector:@selector(compare:)];
NSLog(@"%@",result);

获取数组第一、最后一个元素
NSLog(@"第一个元素:%@  最后一个元素:%@", array.firstObject, array.lastObject);

将字符串变为数组
NSArray *array = [string componentsSeparatedByString:@" "]; //通过空格将字符串划分成数组

将数组变成字符串
NSString *string = [array componentsJoinedByString:@" "]; //通过空格将字符串连接


可变数组
可变数组声明
NSMutableArray *mutableArray = [NSMutableArray array];

添加元素
mutableArray = [mutableArray addObject:id]; //id是任意类型的数据

插入元素
mutableArray = [mutableArray insertObject:id atIndex:1]; //在下标为1的位置插入id

删除元素
mutableArray = [mutableArray removeObject:id]; //删除数组中元素

替换元素
mutableArray = [mutableArray replaceObjectAtIndex:0 withObject:id]; //用id替换下标为0的元素








ASCII码表可以通过数组形式表示,通常在编程中使用一维数组来存储每个字符的ASCII值。ASCII码共有128个字符,其中每个字符对应一个唯一的整数值,范围从0到127。以下是ASCII码表数组形式的表示方式及相关信息: ### ASCII码表数组的定义 在C语言中,可以通过字符类型数组来存储ASCII字符,示例如下: ```c char ascii_chars[128]; for (int i = 0; i < 128; i++) { ascii_chars[i] = (char)i; } ``` 上述代码将0到127的整数值强制转换为对应的ASCII字符,并存储到`ascii_chars`数组中。通过这种方式,可以访问数组中的每个字符。 ### ASCII码值与字符的对应关系 - **控制字符**(0~31和127):这些字符主要用于控制通信设备或文本格式,例如换行符(LF,ASCII码为10)、回车符(CR,ASCII码为13)、删除符(DEL,ASCII码为127)等[^1]。 - **可打印字符**(32~126): - **空格字符**(32):表示空格。 - **数字字符**(48~57):表示数字0到9。 - **大写字母**(65~90):表示字母A到Z。 - **小写字母**(97~122):表示字母a到z。 - **标点符号和运算符**(33~47、58~64、91~96、123~126):包括常见的符号,例如逗号(44)、句号(46)、加号(43)等[^1]。 ### 获取ASCII码值的示例代码 在C++中,可以直接将字符赋值给整型变量来获取其ASCII码值,例如: ```cpp #include <iostream> using namespace std; int main() { int char_1, char_2; char_1 = 'A'; // 将字符'A'赋值给整型变量,自动转换为ASCII码值 char_2 = 'B'; // 将字符'B'赋值给整型变量,自动转换为ASCII码值 cout << char_1 << " " << char_2 << endl; // 输出字符的ASCII码值 return 0; } ``` 上述代码会输出字符`A`和`B`的ASCII码值,分别为65和66[^4]。 ### ASCII码值的存储方式 在计算机存储单元中,一个ASCII码值占一个字节(8位),其中最高位(b7)通常用作奇偶校验位。奇偶校验用于检测数据传输过程中的错误,分为奇校验和偶校验两种方式。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值