zoukankan      html  css  js  c++  java
  • objective-c数组笔记

    数组与可变数组

    2015年6月14日

    1.数组

    数组的初始化方式

    1.初始化一个空数组

    NSArray *array = [[NSArray alloc] init];//不可变数组,数组内不可以添加,删除,替换等元素

    2.初始化一个空数组

    NSArray *array = [NSArray array];

    3.初始化一个数组,同时赋一个值给数组

    NSArray *array = [NSArray arrayWithObject:@""];//数组里可以放任何类型的数据

    4.初始化的同学添加多个元素

    NSArray *array = [NSArray arrayWithObjects:@"",@"", nil];//注意不要忘记写nil,在它的前面有个逗号,

    5.数组书写的新方法

    NSArray *array = @[@"",@""];

    数组取值,通过数组下标取值,下标从0开始,取数组里面元素的方法objectAtIndex

    //        新方法

    //        数组里面存的是什么类型就要用什么类型的变量去接收

    //        NSString *name = list[1];

            NSLog(@“%@",list[2]);

     

    类型转换

    数组里面需要的是id类型 需要把基本数据类型转换成NSNumber类型

    int age = 120;

            int s = 1;

            NSLog(@"%012d",s);

            NSNumber *ageNum = [[NSNumber alloc] initWithInt:age];

            NSLog(@"%@",ageNum);

            NSNumber *ageNum1 = [NSNumber numberWithInt:age];

    //        现在把NSNumber类型转换成float类型

            float aa = [newXiaoShu floatValue];

            NSLog(@“%.5f",aa);

    2.可变数组

    //        可以在数组里面进行增删改的操作

    //

    //        可变数组与数组的关系:可变数组是数组的子类,

    //        可变数组的初始化方式

    //        NSMutableArray *array= [[NSMutableArray alloc] init];

    //        NSMutableArray *array1 = [NSMutableArray array];

    //        NSMutableArray *array2 = [NSMutableArray arrayWithObject:@""];

    //        NSMutableArray *array3 = [NSMutableArray arrayWithObjects:@"",@"", nil];

    //        NSMutableArray *array4 = @[@""];不可以这样写,切记,这是可变数组与数组的一个区别,这样初始化它里面的元素是不可变的

    //        可变数组可以向数组内添加元素

    //        使用可变数组的时候一定要初始化

            NSMutableArray *array = [NSMutableArray array];

    //        为可变数组添加方法

    //        [array addObject:@"huLuWan"];

    //        [array addObject:@"aoTeMan"];

    //        NSLog(@"%@",array);

           [array removeObjectAtIndex:70];移除第70个元素

    //        [array removeAllObjects];

            [array removeObject:@“技能7"];//技能7”移除

    //        id obj 数组里面的每个元素

    //        in表示在哪个里面

    //        group 要遍历的数组

    //        和上面的for循环一样的功能

            for(id obj in group){

                NSLog(@"%@",obj);

            }

            

    //        [group firstObject];//获得数组的第一个元素

    //        [group lastObject];//获得数组的最后一个元素

    [group replaceObjectAtIndex:3 withObject:@"fengshenghai666"];//替换第三个元素为fengshenghai666

     

    补充

    - (NSString *)description

    {

        return [NSString stringWithFormat:@"英雄的名字是:%@,等级是:%ld,装备是:%@,血量是:%ld,攻击力是:%ld",self.heroName,(long)self.heroLv,self.heroEquipment,self.heroBlood,self.ATK];

    }

     

    description方法重写

     

    这样写了之后,在main函数中写这样for循环

    for (Hero *hero in allHeroDate) {//把所有的英雄数据输出;

                NSLog(@"%@",hero);

            }

    就能输入allHeroDate里面的所有东西,输出(打印)格式是description里面的格式(样子)

    为了更好点交流和学习,请大家在参阅博客后,留下你的疑问和宝贵意见。谢谢!!!!
  • 相关阅读:
    [LeetCode]Sliding Window Maximum
    判断两根线段是否相交
    求幂,我居然又没做出来
    C++集合运算函数总结 & 需要有序集合的操作
    effective stl读书笔记 & stl里面提供的算法 & emplace & ostream_iterator
    利用位操作的几道题目
    C++的new_handler
    TCP的可靠性 窗口滑动 拥塞控制
    关于高性能网络编程的一些知识
    三种连接 & DOS & SYNFLOOD & 防御
  • 原文地址:https://www.cnblogs.com/fshmjl/p/4598498.html
Copyright © 2011-2022 走看看