OC语言 实现十进制字符串转二进制
生活随笔
收集整理的這篇文章主要介紹了
OC语言 实现十进制字符串转二进制
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
正數(shù)十進(jìn)制轉(zhuǎn)二進(jìn)制:是除2取余數(shù)倒序
負(fù)數(shù)十進(jìn)制轉(zhuǎn)二進(jìn)制:是相對應(yīng)正數(shù)的 二進(jìn)制 反碼
OC實現(xiàn):
// // NSString+Convert.h // Test // // Created by QearlYu on 2019/7/12. // Copyright ? 2019年 QearlYu. All rights reserved. //#import <Foundation/Foundation.h>@interface NSString (Convert)- (NSString *)binary;@end // // NSString+Convert.m // Test // // Created by QearlYu on 2019/7/12. // Copyright ? 2019年 QearlYu. All rights reserved. //#import "NSString+Convert.h"@implementation NSString (Convert)- (NSString *)binary {NSInteger decimalism = self.integerValue; // 把輸入的十進(jìn)制字符串 轉(zhuǎn)為 int類型BOOL isReverse = NO; // 控制是否反碼if (decimalism < 0) { // 輸入的十進(jìn)制如果是小于零的話,二進(jìn)制反碼decimalism = -decimalism;isReverse = YES;}NSMutableString *result = [NSMutableString new];while (decimalism > 0) { // 當(dāng)商等于0時,循環(huán)終止NSInteger temp = decimalism % 2;decimalism = decimalism /2;// 余數(shù)倒序拼接,余數(shù)一直拼在result字符串的前面// 正數(shù)直接取余數(shù)倒序,負(fù)數(shù)二進(jìn)制進(jìn)行0和1的反碼互換后倒序拼接NSString *tempString = [NSString stringWithFormat:@"%ld", isReverse ? (temp == 0 ? 1 : 0) : temp];result = [tempString stringByAppendingString:result]; }return result; }@end控制臺打印的結(jié)果為:
總結(jié)
以上是生活随笔為你收集整理的OC语言 实现十进制字符串转二进制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用python对包含离散型特征和连续型
- 下一篇: Grapher是二维绘图软件,主要用于绘