Java 回文的发现及其二元性
我试图找到回文和它的二进制,现在我得到正确的回文数字,但它的二进制打印不正确,请帮助我犯了什么错误Java 回文的发现及其二元性,java,Java,我试图找到回文和它的二进制,现在我得到正确的回文数字,但它的二进制打印不正确,请帮助我犯了什么错误 package Palindrome public class PalindromeNnumber { public static void main(String[] args) { for (int i = 11; i < 100; i++) { isPalindrome(i); } } privat
package Palindrome
public class PalindromeNnumber {
public static void main(String[] args) {
for (int i = 11; i < 100; i++) {
isPalindrome(i);
}
}
private static void isPalindrome(int i) {
int reverse = 0;
int input = i;
while (i > 0) {
int remainder = i % 10;
reverse = reverse * 10 + remainder;
i = i / 10;
}
int rnumber = reverse;
if (input == reverse) {
System.out.println("Palindrome Number " + reverse);
isBinary(rnumber);
}
}
private static void isBinary(int rnumber) {
int reversebinary = 0;
//Finding Binary Number for the input number
while (rnumber > 0) {
int remainderb = rnumber % 2;
reversebinary = reversebinary * 10 + remainderb;
rnumber = rnumber / 10;
}
System.out.println("Binary Numbers are :"+reversebinary);
}
}
您要使用:
Integer.toBinaryString(int i)
@MikeSamuel,当我使用Integer.toBinaryString(int i)时,它会打印精确的二进制值,但我尝试使用while循环打印,它会正确打印0-15,之后它不会打印精确的二进制值。我的代码中有什么问题?您可以提供一个值
整数的示例。toBinaryString
不正确吗<代码>Integer.toBinaryString(16).equals(“10000”)在我的系统上,这似乎是正确的。当我使用Integer.toBinaryString(int i)时,它会打印精确的二进制值,但我尝试使用while循环打印,它会正确打印0-15,之后它不会打印精确的二进制值我的代码中有什么问题。。
Integer.toBinaryString(int i)