马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 juhugufudu 于 2019-10-1 16:18 编辑 ----------------启蒙篇------------------ 0.10进制转成2进制
10/2的余数是0,结果是5
5/2的余数是1,结果是2
2/2的余数是0,结果是1
1/2的余数是1,结果为0 2进制转成10进制
0101 = 0*20+1*21+0*22+1*23 = 10
1.串与数值的转换
如“5376”,要转成真值,可以把5转换成真值,但怎末转换呢?String s = "5376";
int n = 0;
n = s.charAt(0)-'0';
//s.charAt()所得的是ASCII码,-'0'便可以得到他的真值
但有一个问题,当要把"53"转成真值,因该怎末办呢?
以上做法肯定是行不通的
但是有一个思路
这样,n便可以储存53了
用for语句改进一下String s = "5376";
int n = 0;
for(int i= 0;i < s.length();i++)
{
n = n*10+s.chatAt(i)-'0';
}
--------------开始------------- 进制的转换,其实就是串与字符的转换String s = "012002";
//String s是一个存储3进制的串
int n = 0;
for(int i= 0;i < s.length();i++)
{
n = n*3+s.chatAt(i)-'0';
}
n*10是一个进制,10是一个位权!
so..
把10改成3,便是把012002转成十进制!
n = 0*3+0 = 0;
n = 0*3+1 = 1;
n = 1*3+2 = 5;
n = 2*3+0 = 6;
n = 6*3+0 = 18;
n = 18*3+2 = 56;
n = 56;
|