请用Java完善下列十进制转二进制的代码public static String binary2Decimal(int num){}
时间: 2023-09-09 17:04:29 浏览: 104
### 回答1:
下面是用 Java 完善的十进制转二进制的代码:
```
public static String binary2Decimal(int num) {
StringBuilder binary = new StringBuilder();
while (num > 0) {
binary.append(num % 2);
num /= 2;
}
return binary.reverse().toString();
}
```
该方法使用了一个字符串生成器(StringBuilder)来构建最终的二进制字符串。我们通过不断地取余(num % 2)并将数字除以 2(num /= 2)来得到每一位二进制数字。最后,我们使用字符串生成器的 reverse 方法将二进制字符串翻转并将其转换为字符串,然后返回。
### 回答2:
要完善给出的十进制转二进制的代码,可以使用以下步骤:
1. 创建一个空字符串变量,用于存储转换后的二进制数。
2. 使用循环迭代来计算每一位的二进制数,直到输入的十进制数为0。
3. 在每次迭代中,将当前十进制数模2,并将得到的余数添加到步骤1中的字符串变量中。
4. 将十进制数除以2,再继续步骤2的循环迭代。
5. 重复2-4步骤,直到十进制数为0时结束循环。
6. 将步骤1中的字符串变量反转,得到正确的二进制数。
7. 返回反转后的二进制字符串。
以下是完善后的代码:
```java
public static String binary2Decimal(int num){
StringBuilder binary = new StringBuilder();
if (num == 0) {
binary.append("0");
}
while (num > 0) {
int remainder = num % 2;
binary.append(remainder);
num = num / 2;
}
return binary.reverse().toString();
}
```
这个方法接收一个十进制数作为输入,并返回对应的二进制字符串。如果输入的十进制数为0,则直接返回"0";否则,通过循环迭代计算每一位的二进制数,并将其添加到字符串中。最后,将字符串反转,并以字符串形式返回。
### 回答3:
下面是使用Java语言完善十进制转二进制的代码:
```java
public static String decimal2Binary(int num) {
if (num == 0) {
return "0";
}
StringBuilder binary = new StringBuilder();
while (num > 0) {
binary.insert(0, num % 2);
num /= 2;
}
return binary.toString();
}
```
这个代码的实现逻辑如下:
1. 首先判断输入数字是否为0,若为0则直接返回字符串"0";
2. 创建一个`StringBuilder`对象用于存储二进制数,通过循环将二进制的每一位从最低位开始逐步添加到字符串的开头;
3. 在循环中,先求取`num`除以2的余数,将余数添加到二进制字符串的开头,并将`num`除以2的结果赋值给`num`;
4. 继续循环,直到`num`除以2的结果为0为止;
5. 返回得到的二进制字符串。
此方法将十进制转换为二进制,返回一个字符串表示二进制数。
阅读全文