微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何仅使用按位运算符添加或减去由 char[] 数组表示的两个二进制数

如何解决如何仅使用按位运算符添加或减去由 char[] 数组表示的两个二进制数

我必须将两个由 char[] 数组表示的二进制数相加和相减,并以指定的数字系统显示它们。我已经有了这个:

public static void main(String[] args) {

    String num1 = "127";
    String num2 = "5";
    char operator = '+'; // or "-" for substract
    int system = 2; // from 2 to 16

    char[] number1 = new char[num1.length()];
    for (int i = 0; i < num1.length(); i++) {
        number1[i] = num1.charat(i);
    }
    char[] number2 = new char[num2.length()];
    for (int i = 0; i < num2.length(); i++) {
        number2[i] = num2.charat(i);
    }


    calc(number1,number2,operator,system);
}

public static void calc(char[] number1,char[] number2,char operator,int system){
    char[] finalResult;
    char[] bin = toBinary(number1);
    char[] bin2 = toBinary(number2);
    if(operator == "+"){finalResult = addBinary(number1,number2)}
    else{finalResult = substractBinary(number1,number2)};
    
    // sout result of add or substract in given system by string of numbers
}

这里有两个我无法编写的函数

public static char[] addBinary(char[] binaryNumber1,char[] binaryNumber2){
    char[] result;
    return result;
}

public static char[] substractBinary(char[] binaryNumber1,char[] binaryNumber2){
    char[] result;
    return result;
}

而且我不知道如何在 addBinary 和 substractBinary 函数中进行按位运算。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。