java用栈把十进制转换成二进制
时间: 2023-11-10 10:12:42 浏览: 148
可以使用栈来将十进制数转换为二进制数。具体步骤如下:
1. 将十进制数不断除以2,直到商为0为止,每次得到的余数就是对应二进制数位上的数字。
2. 将得到的余数依次压入栈中。
3. 从栈中依次弹出数字,组成二进制数。
下面是Java代码实现:
```java
import java.util.Stack;
public class DecimalToBinary {
public static void main(String[] args) {
int decimal = 17;
Stack<Integer> stack = new Stack<Integer>();
// 将余数压入栈中
while (decimal != 0) {
int remainder = decimal % 2;
stack.push(remainder);
decimal /= 2;
}
// 弹出栈中数字,组成二进制数
StringBuilder binary = new StringBuilder();
while (!stack.isEmpty()) {
binary.append(stack.pop());
}
System.out.println("Binary representation: " + binary.toString());
}
}
```
输出为:Binary representation: 10001
阅读全文