public class SF {
public String test(String a, String b) {
char[] achars = a.toCharArray();
char[] bchars = b.toCharArray();
//反转后得数组
char[] A_Revert =new char[achars.length];
char[] B_Revert =new char[bchars.length];
int Aj =0;
int Bj =0;
for (int i = achars.length -1; i >=0; i--) {
A_Revert[Aj] = achars[i];
Aj++;
}
for (int i = bchars.length -1; i >=0; i--) {
B_Revert[Bj] = bchars[i];
Bj++;
}
int AOf10 =0;//A得十进制
int BOf10 =0;//B得十进制
for (int i = A_Revert.length -1; i >=0; i--) {
if (A_Revert[i] =='1') {
AOf10 = (int) (AOf10 + Math.pow(2, i));
}
}
for (int i =0; i < B_Revert.length; i++) {
if (B_Revert[i] =='1') {
BOf10 = (int) (BOf10 + Math.pow(2, i));
}
}
int sumOf10 = AOf10 + BOf10;
if (sumOf10 >0) {
String i = _2(sumOf10);
System.out.println(i);
return i;
}
return "0";
}
StringBuilders =new StringBuilder();
//十进制转换二进制
public String _2(int num) {
if (num>=2){
//不被整除
if (num %2 !=0) {
s.insert(0,"1");
_2(num /2);
}else {
s.insert(0,"0");
_2(num /2);
}
}else{
s.insert(0,"1");
}
return s.toString();
}
public static void main(String[] args) {
SF S =new SF();
S.test("1010","1011");
//S.test("11", "1");
}
}