//1、NSArray数组
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
@autoreleasepool {
//初始化
//定义一个不可变数组 //并且初始化
NSArray* array0 = [[NSArray alloc] init] ;
//通过若干个对像初始化数组
NSArray* array1 = [[NSArray alloc] initWithObjects:@"小明",@"小刚",@"小强",nil];
//根据已经存在的一个数组创建一个新的数组//新数组的内容与原来数组的内容一样
NSArray* array2 = [[NSArray alloc] initWithArray:array1];
NSString* str = (NSString*)array1[0] ;
for (int i = 0; i < [array1 count]; i++)
{
//通过索引来取得数组中的相应对象
//参数为获得元素在数组中的索引
//返回值为一个id类型范型指针
NSString* strName = [array1 objectAtIndex:i] ;
NSLog(@"strName = %@",strName) ;
}
//快速遍历循环语法
//第一个变量为指针对象类型
//可以使用id类型来接受
//in后的参数二表示集合类型
//数组,集合,字典
//不能对遍历的集合进行做增加或删除操作
for (id pStr in array1)
{
NSString* str = (NSString*) pStr ;
NSLog(@"str = %@",str);
}
//查找数组中是否包含某个元素
BOOL isHas = [array1 containsObject:@"小明"];
if (isHas) {
NSLog(@"小明在数组中!!");
}
//返回数组中的最后一个元素
NSString* strLast = [array1 lastObject] ;
NSLog(@"strLast = %@",strLast) ;
NSString* strFirst = [array1 objectAtIndex:0] ;
}
return 0;
}
//2、可变数组NSMutableArray
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool
{
NSInteger iValue = 10 ;
//通过类方法返回一个初始化好的一个可变数组对象
NSMutableArray* mArray = [NSMutableArrayarray] ;
//[mArray addObject:iValue] ;
//通过预先分配内存大小的方式创建动态数组
NSMutableArray* mArray2= [NSMutableArrayarrayWithCapacity:10] ;
//用一个对象初始化数组
NSMutableArray* mArray3 = [NSMutableArrayarrayWithObject:@"123"] ;
mArray3 = [NSMutableArray arrayWithObjects:@"123", nil];
//通过数组来初始化对象
NSMutableArray* mArray4 = [NSMutableArray arrayWithArray:mArray3] ;
//像数组中添加对象,参数为指针对象
[mArray addObject:@"111"] ;
[mArray addObject:@"222"] ;
[mArray addObject:@"333"] ;
[mArray addObject:@"111"] ;
NSLog(@"mArray = %@",mArray) ;
// //删除索引为0的元素
[mArray removeObjectAtIndex:0] ;
// NSLog(@"mArray = %@",mArray) ;
//
// //删除最后一个元素
[mArray removeLastObject] ;
// NSLog(@"mArray = %@",mArray) ;
[mArray removeObject:@"111"] ;
NSLog(@"mArray = %@",mArray) ;
//替换索引位置的元素
[mArray replaceObjectAtIndex:0withObject:@"555"] ;
NSLog(@"mArray = %@",mArray) ;
// insert code here...
NSLog(@"Hello, World!");
NSMutableArray* arrayNum = [NSMutableArrayarray] ;
for (int i = 0; i < 10; i++)
{
//随机产生整数
NSInteger value = arc4random() % 100 ;
NSNumber* num = [NSNumber numberWithInteger:value] ;
[arrayNum addObject:num] ;
}
for (id num in arrayNum)
{
NSNumber* numValue = (NSNumber*)num ;
NSLog(@"value = %@",numValue) ;
}
}
return 0;
}
//字符串分割与连接
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
@autoreleasepool {
NSString* str = @"one,two,three,four,five";
//分割字符创为数组,下例以“,”分割
NSArray* array = [str componentsSeparatedByString:@","];
for(NSString* obj in array)
{
NSLog(@"%@", obj);
}
//链接字符串,下例以空格连接
str = [array componentsJoinedByString:@" "];
NSLog(@"%@", str);
}
return 0;
}
更多内容参考官方文档:https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSMutableArray_Class/Reference/Reference.html
相关推荐
这个"Learn Objective-C 中文版 v2"的学习资源可能是针对那些希望深入理解Objective-C语言特性和编程实践的开发者设计的。下面我们将详细探讨Objective-C的关键知识点。 1. **面向对象编程基础**: - **类与对象**...
Objective-C是一种主要应用于苹果操作系统上的编程语言,它是C语言的一种扩展,支持面向对象编程特性。Objective-C最初由Pike International公司的Brad Cox和Tom Love于1983年设计,并在1986年由NEXTSTEP系统引入。...
6. **集合类(Collection Classes)**:如NSArray、NSMutableArray、NSDictionary、NSMutableDictionary等,理解它们的线程安全性和遍历方式对于编写高效代码至关重要。 7. **自动引用计数(ARC,Automatic ...
Objective-C提供了多种集合类,如数组(NSArray、NSMutableArray)、字典(NSDictionary、NSMutableDictionary)和集合(NSSet、NSMutableSet)。这些集合类允许开发者以不同的方式存储和管理数据集合。 在构建自己...
这份"Objective-C基础教程(第2版)"将帮助初学者全面掌握Objective-C语言的基础知识,为开发iOS和macOS应用程序打下坚实的基础。通过深入学习,开发者将能够利用Objective-C的灵活性和强大功能,创建出功能丰富、...
- **目标读者**:本书适合初学者以及有一定基础的开发者学习Objective-C语言。 #### 三、安装与配置 - **安装步骤**: - 安装Xcode:Objective-C的主要开发环境为Xcode,它是苹果官方提供的集成开发环境(IDE),...
Objective-C提供了两个数组类:NSArray和NSMutableArray。NSArray用于创建不可变数组,而NSMutableArray则提供了修改数组内容的方法。以下是Objective-C中数组操作的详细知识点总结: 1. **创建数组**: - 使用`...
Objective-C是一种用于苹果iOS和Mac OS X应用程序开发的面向对象...通过这一系列的系统学习,学员们能够熟练使用Objective-C完成从基础的程序构建到高级功能的开发,同时也能更好地理解与运用面向对象编程的相关概念。
Objective-C 2.0 是苹果公司为iOS和Mac OS X操作系统开发的一种面向对象的编程语言,它是C语言的超集,融入了Smalltalk的特性。本资料主要关注的是Objective-C 2.0的课后习题解答,这些习题旨在帮助学习者深入理解...
Objective-C是一种面向对象的编程语言,它是C语言的超集,添加了Smalltalk风格的消息传递机制,主要用于开发苹果平台上的应用程序,包括iOS和macOS。Objective-C是在20世纪80年代由Stepanov和Moss在施乐帕洛阿尔托...
Objective-C不仅保留了C语言的所有功能,还引入了许多新的概念和技术,使得开发者能够更加高效地构建复杂的应用程序。 #### 二、面向对象基础 Objective-C作为一种典型的面向对象语言,支持类(Class)、对象(Object...
通过学习这些资料,你可以深入理解Objective-C的基础概念、语法特性以及在实际开发中的应用。 1. **基础概念**: - Objective-C是在C语言基础上扩展的,它引入了消息传递机制,使得面向对象编程更为灵活。 - `#...
2. `NSArray` 和 `NSMutableArray`:不可变和可变数组,用于存储对象序列。 3. `NSDictionary` 和 `NSMutableDictionary`:不可变和可变字典,用于存储键值对。 4. `NSString`:不可变字符串类,提供字符串操作。 5....
Objective-C是一种强大的面向对象的编程语言,主要用于Apple...通过阅读《Objective-C for Absolute Beginners》这本书,你可以更系统地学习Objective-C,掌握iOS或macOS开发的基本技能,逐步成长为一名熟练的开发者。
### Objective-C语法总结知识点 #### 1. XCode、Objective-C、Cocoa - **XCode**: 开发环境...对于初学者来说,理解这些概念是学习Objective-C的重要步骤。随着实践的深入,开发者还可以探索更多高级特性和最佳实践。
Objective-C的起源可追溯到C语言,它在C的基础上添加了Smalltalk风格的消息传递机制,使得程序设计更加灵活和动态。在Objective-C中,类是主要的构建块,它们定义了对象的行为和属性。类通过继承、封装和多态等面向...
- **集合类**:Swift的数组和字典类型可以与Objective-C的`NSArray`、`NSMutableArray`、`NSDictionary`和`NSMutableDictionary`相互转换。 - **Foundation数据类型**:Swift可以使用Foundation框架中的数据类型。...