NSArray+BBASafeValue.h 1.63 KB
//
//  NSArray+BBANumber.h
//  BBANovel
//
//  Created by Zhu,Yusong on 2018/9/24.
//  Copyright © 2018年 Baidu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "BDPFoundationDefines.h"

/*
 * 安全获取数组元素的辅助方法
 * 详细介绍请看README-SafeAPI
 */
NS_ASSUME_NONNULL_BEGIN

@interface NSArray (BBASafeValue)

/**
 * @brief 安全的获取数组内index位置的字符串元素
 *
 * @param index index
 * @return 如果不是字符串,返回nil
 */
- (nullable NSString *)bba_stringValueAtIndex:(NSUInteger)index BDP_FOUNDATION_DEPRECATED("please use bdp_safeStringValueAtIndex:");
- (nullable NSString *)bdp_safeStringValueAtIndex:(NSUInteger)index;

/**
 * @brief 相当于 bba_numberValueAtIndex: numberStringInsensitive:NO
 *
 * @param index index
 * @return 如果不是NSNumber,返回nil
 */
- (nullable NSNumber *)bba_numberValueAtIndex:(NSUInteger)index BDP_FOUNDATION_DEPRECATED("please use bdp_safeNumberValueAtIndex:");
- (nullable NSNumber *)bdp_safeNumberValueAtIndex:(NSUInteger)index;

/**
 * @brief 安全的获取数组内index位置的NSNumber元素
 *
 * @param index index
 * @param insensitive 对numberString是否敏感 若为 YES 会将可以转换成 NSNumber 的字符串转换成NSNumber并返回
 * @return NSNumber 如果不是 NSNumber 返回nil
 */
- (nullable NSNumber *)bba_numberValueAtIndex:(NSUInteger)index numberStringInsensitive:(BOOL)insensitive BDP_FOUNDATION_DEPRECATED("please use  bdp_safeNumberValueAtIndex:numberStringInsensitive:");
- (nullable NSNumber *)bdp_safeNumberValueAtIndex:(NSUInteger)index numberStringInsensitive:(BOOL)insensitive;

@end

NS_ASSUME_NONNULL_END