OC学习笔记之类002数据类型

1.基本数据类型及打印
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        int a=100;
        float b=12.34;
        NSString *c=@"hello world";
        NSDate *date=[NSDate date];
        NSLog(@"%d\n",a);
        NSLog(@"%f\n",b);
        NSLog(@"%@\n",c);
        NSLog(@"%@\n",date);
    }
    return 0;
}

输出:
2020-05-13 16:59:10.204527+0800 EX003[2802:159979] 100
2020-05-13 16:59:10.204839+0800 EX003[2802:159979] 12.340000
2020-05-13 16:59:10.204899+0800 EX003[2802:159979] hello world
2020-05-13 16:59:10.204937+0800 EX003[2802:159979] Wed May 13 16:59:10 2020

2.枚举类型
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        enum Mycolor{red,black,blue};//常规定义枚举变量
        enum {pink,yellow,green} car1,car2;//匿名定义枚举变量
        
        enum Mycolor box1=black;
        car1=pink;
        NSLog(@"%d",box1);//输出1,实际枚举的值都是整数,从0开始
        NSLog(@"%d",car1);
        
        switch (car1) {
            case 0:
                NSLog(@"the car is pink");
                break;
            case 1:
                NSLog(@"the car is yellow");
                break;
            case 2:
                NSLog(@"the car is green");
                break;
            
            default:
                NSLog(@"unkown color");

        }
    }
    return 0;
}

输出:
2020-05-13 17:08:01.552215+0800 EX003[2854:163890] 1
2020-05-13 17:08:01.552503+0800 EX003[2854:163890] 0
2020-05-13 17:08:01.552529+0800 EX003[2854:163890] the car is pink

3.BOOL类型
#import <Foundation/Foundation.h>
BOOL judge(int a,int b){
    if (a>b) {
        NSLog(@"%d is bigger then %d\n",a,b);
        return true;
    }else{
        NSLog(@"%d is smaller then %d\n",a,b);
        return false;

    }
    
}

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        
        
        if (judge(1,3)) {
            NSLog(@"hello world");
        }else{
            NSLog(@"hate world");
        }
    }
    return 0;
}

输出:
2020-05-13 17:14:29.959361+0800 EX003[2911:167448] 1 is smaller then 3
2020-05-13 17:14:29.959651+0800 EX003[2911:167448] hate world

4.类型转换
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        float a=123.45;
        NSString *umber=@"100";
        int b=120;
        
        int c=a;
        float d=b;
        int e='e';
        NSLog(@"%d\n",c);
        NSLog(@"%f\n",d);
        NSLog(@"%d\n",e);
        NSLog(@"%f\n",(float)e);
    }
    return 0;
}
5.数组定义及使用
#import <Foundation/Foundation.h>
#define ARR_LENGTH 5;
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        
        int myArray[]={1,2,3};//自动判断数组长度
        for (int i=0,length=sizeof(myArray)/sizeof(myArray[0]);i<length; i++) {
            NSLog(@"%d \t",myArray[i]);
        }
        NSLog(@"-----\n");
        const int arr_length=5;
        
        NSString *myArray1[arr_length];
        myArray1[0]=@"zhangsan";
        myArray1[1]=@"lisi";
        myArray1[2]=@"wanger";
        myArray1[3]=@"mafei";
        myArray1[4]=@"laoren";

        for (int i=0; i<arr_length;i++) {
             NSLog(@"%@ \t",myArray1[i]);

        }
        NSLog(@"-----\n");

        int array2[arr_length]={3,5,7};//定义为5,但实际为3,后面两个值不可靠
        for (int i=0,length=sizeof(array2)/sizeof(array2[0]); i<length; i++) {//oc依然没有提供数组长度的方法或者属性
            NSLog(@"%d\t",array2[i]);
        }
        
    }
    return 0;
}

输出:
2020-05-13 18:17:24.782025+0800 EX003[3487:198983] 1
2020-05-13 18:17:24.782311+0800 EX003[3487:198983] 2
2020-05-13 18:17:24.782338+0800 EX003[3487:198983] 3
2020-05-13 18:17:24.782358+0800 EX003[3487:198983] -----
2020-05-13 18:17:24.782404+0800 EX003[3487:198983] zhangsan
2020-05-13 18:17:24.782428+0800 EX003[3487:198983] lisi
2020-05-13 18:17:24.782447+0800 EX003[3487:198983] wanger
2020-05-13 18:17:24.782465+0800 EX003[3487:198983] mafei
2020-05-13 18:17:24.782483+0800 EX003[3487:198983] laoren
2020-05-13 18:17:24.782499+0800 EX003[3487:198983] -----
2020-05-13 18:17:24.782533+0800 EX003[3487:198983] 3
2020-05-13 18:17:24.782569+0800 EX003[3487:198983] 5
2020-05-13 18:17:24.782591+0800 EX003[3487:198983] 7
2020-05-13 18:17:24.782625+0800 EX003[3487:198983] 0
2020-05-13 18:17:24.782648+0800 EX003[3487:198983] 0

6.多维数组
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        int length1=3;
        int length2=2;
        
        int multiArray1[length1][length1];
        int multiArray2[][2]={{3,4},{7,5},{9,8}};//确实第一个数组长度参数,由于有第二维长度,系统自动推断第一维长度
        for (int i=1; i<length1+1; i++) {
            for (int j=1; j<length2+1; j++) {
                multiArray1[length1][length2]=i*j;
                NSLog(@"%d \t",multiArray1[length1][length2]);
            }
            NSLog(@"----");

        }
        NSLog(@"========");
        
        for (int i=0,length=sizeof(multiArray2)/sizeof(multiArray2[0]); i<length; i++) {
            for (int j=0,length3=sizeof(multiArray2[i])/sizeof(multiArray2[i][0]); j<length3; j++) {
                NSLog(@"%d",multiArray2[i][j]);
            }
            NSLog(@"----");

        }
        
    }
    return 0;
}

输出:
2020-05-13 19:31:58.641631+0800 EX003[3964:228572] 1
2020-05-13 19:31:58.641901+0800 EX003[3964:228572] 2
2020-05-13 19:31:58.641930+0800 EX003[3964:228572] ----
2020-05-13 19:31:58.641949+0800 EX003[3964:228572] 2
2020-05-13 19:31:58.641966+0800 EX003[3964:228572] 4
2020-05-13 19:31:58.642041+0800 EX003[3964:228572] ----
2020-05-13 19:31:58.642086+0800 EX003[3964:228572] 3
2020-05-13 19:31:58.642109+0800 EX003[3964:228572] 6
2020-05-13 19:31:58.642130+0800 EX003[3964:228572] ----
2020-05-13 19:31:58.642219+0800 EX003[3964:228572] ========
2020-05-13 19:31:58.642276+0800 EX003[3964:228572] 3
2020-05-13 19:31:58.642325+0800 EX003[3964:228572] 4
2020-05-13 19:31:58.642369+0800 EX003[3964:228572] ----
2020-05-13 19:31:58.642453+0800 EX003[3964:228572] 7
2020-05-13 19:31:58.642542+0800 EX003[3964:228572] 5
2020-05-13 19:31:58.642613+0800 EX003[3964:228572] ----
2020-05-13 19:31:58.642639+0800 EX003[3964:228572] 9
2020-05-13 19:31:58.642659+0800 EX003[3964:228572] 8
2020-05-13 19:31:58.642676+0800 EX003[3964:228572] ----

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值