NSValue(可以包装任意值)

本文通过示例介绍了Objective-C中NSValue类的用途,包括如何使用它来包装和解包NSRange结构体,以及NSNull的使用场景,如在数组中表示空值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//
//  main.m
//  OC05-task-05
//
//  Created by Xin the Great on 15-1-26.
//  Copyright (c) 2015年 Xin the Great. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        //////////////////////NSValue//////////////////
        
        //NSValue 可以包装任意值
        NSRange range = {1, 5};
        
        //将结构体包装成对象
        NSValue *value = [NSValue value:&range withObjCType:@encode(NSRange)];
        NSLog(@"value is %@", value);
        
        //还原
        NSRange newRange;
        [value getValue:&newRange];
//        NSLog(@"%ld, %ld",newRange.location, newRange.length);
        NSLog(@"%@",NSStringFromRange(newRange));
        
        
        /////////////////////NSNull//////////////////////
        //表示一个空对象
        NSNull *null = [NSNull null];
        NSArray *arr = @[@"1", @"2", null, @"3"];
        NSLog(@"arr is %@", arr);
        
        
    }
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值