java - 将字符串转换为 stringbuilder 对象,以便可以将反向选项应用于字符串
问题描述
基本上,我将十进制转换为二进制,为此我定义了一个方法conversionBinaryDecimal()
,其中我将整数 n 传递给它,每次我将 n 除以 2 并通过串联将余数添加到字符串变量 inBinary。但是当我添加余数时,它会以相反的顺序存储。例如:6 二进制是 110,但它存储为 011。所以,我想反转字符串以获得准确的答案。为此,我使用 StringBuilder 将其转换为可变字符串,但是当我使用反向内置方法时。它说配置分配。
我已经尝试到处搜索以了解为什么会这样?但我不明白。
package conversionbinarydecimal;
import java.lang.*;
import java.io.*;
import java.util.*;
import java.util.Scanner;
public class ConversionBinaryDecimal {
static void decimalToBinary(int n){
String inBinary = "";
while(n>0){
int temp = (n%2);
inBinary += temp;
n=n/2;
}
StringBuilder input1 = new StringBuilder();
input1.append(inBinary);
input1 = input1.reverse();
System.out.println(inBinary);
}
public static void main(String[] args) {
// TODO code application logic here
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
decimalToBinary(n);
}
}
我收到编译器错误。预期的输出是任意数字的二进制。例如:6:110
解决方案
您没有打印出input1
字符串,而是打印出inBinary
更改您的代码如下:
input1 = input1.reverse();
System.out.println(input1);
推荐阅读
- wpf - 如何从 Visual Studio 设计器中获取默认组合框?
- sql - 合并两个表,包括 Athena (Presto) 中单个列中所有值的联合
- reactjs - react - 隐藏/显示 DOM - 使用反应库
- html - 如何在 webview 中显示本地 html 文件夹
- node.js - MongoDB:如何将数据从旧模式样式迁移到新集合
- java - 返回空值
- rust - 如何为我不拥有的类型的固有方法创建特征?
- python - TensorFlow 回归神经网络为所有内容输出相同的数字
- elasticsearch - 有没有办法只聚合弹性搜索中的查询命中?
- reactjs - 如何在 create-react-app 中以开发模式启用服务工作者?