我正在用Java编写程序,但是似乎出现了错误。在 hexnumber.indexOf(tempstring)处,它给了我错误消息“不兼容的类型”。我对此感到困惑,因为我明确地将tempstring定义为前一行的String对象。我该如何解决?
String hexnumber = "0123456789ABCDEF";
String hexsolution = "";
int remainder = newDecNumber % 16;
String tempstring = Integer.toString(remainder);
hexsolution.concat(hexnumber.indexOf(tempstring));
newDecNumber = newDecNumber /= 16;
答案 0 :(得分:2)
尝试以下代码:
String hexnumber = "0123456789ABCDEF";
String hexsolution = "";
int remainder = newDecNumber % 16;
String tempstring = Integer.toString(remainder);
hexsolution = hexsolution.concat(hexnumber.substring(remainder, 1));
newDecNumber /= 16;
现在, concat()参数为String类型,因此类型不会出错。
并且 hexsolution 变量现在已正确修改,因为concat()函数不会直接修改该变量。
答案 1 :(得分:2)
tdranv的注释正确-String.concat()
接受一个String
参数并返回一个新的String。看来您的意图是:
hexsolution = hexsolution.concat(hexnumber.substring(remainder, 1));