Tôi muốn thực hiện một số phép tính đơn giản trên NSNumbers và bảo toàn loại. Điều này có thể không?Số học NSNumber
Ví dụ:
- (NSNumber *)add:(NSNumber *)firstNumber to:(NSNumber *)secondNumber;
là định nghĩa phương pháp của tôi, và firstNumber và secondNumber là các số nguyên sau đó tôi muốn trả lại một số nguyên đó là việc bổ sung nguyên của họ cả. Tương tự, nếu cả hai đều tăng gấp đôi thì trả về kết quả là gấp đôi. Có vẻ như tôi có thể nhận được loại (ngoại trừ boolean) bằng cách sử dụng [NSNumber objCType]
như được tìm thấy trong câu hỏi này: get type of NSNumber nhưng tôi không thể trích xuất các loại đó và thực hiện phép tính mà không cần nhiều mã để trích xuất các giá trị tính toán và trả về kết quả cho mọi loại có thể.
Có cách nào ngắn gọn và súc tích để thực hiện việc này không?
Bạn định làm gì nếu có các loại khác nhau? –
Vui lòng ném lỗi hoặc sử dụng loại firstNumber làm mẫu. Cả hai sẽ làm việc cho những gì tôi cần. –
Không có cách nào ngắn gọn để làm điều đó. – sosborn