我知道这不是找到回文的最简单方法...但是我希望有人可以告诉我是否存在一种将多个整数字符串转换为单个int的方法。也许这可以从其他人构建一个字符串?在下面,我有一个输出,与您输入的数字相反。但是,它以一串独立的整数形式出现。我可以将其转换为单个int,然后以某种方式将其与原始数字进行布尔化吗?
如果我忽略了与此类似的话题,对不起。我检查了一下,却没有找到能明显解决我问题的方法。

import java.util.Scanner;

public class Palindrone{

  public static void main(String[] args) {

  Scanner input = new Scanner(System.in);

  System.out.print("Enter an integer between 2 and 6 digits:");
  int num1 = input.nextInt();

  int rev = 0;
  //find last number
  if(num1 >= 10){
    rev = num1%10;
    System.out.print(rev);
  }
  //find 2nd to last and 3rd from last
  if(num1 >= 100){
    rev = num1%100/10;
    System.out.print(rev);
    rev = num1%1000/100;
    System.out.print(rev);
  }
  //find 4th from last
  if(num1 >= 1000){
    rev = num1%10000/1000;
    System.out.print(rev);
  }
  //find 5th
  if(num1 >= 10000){
    rev = num1%100000/10000;
    System.out.print(rev);
  }
  //find 6th
  if(num1 >= 100000){
    rev = num1%1000000/100000;
    System.out.print(rev);
  }
 }
}


我正在尝试从打印字符串(int rev)(int rev)(int rev)(int rev)转到
一个固定的字符串,然后转换为int。然后if(newInt == num1)运行语句。

最佳答案

您可以这样处理,而不必担心string-int转换:

Scanner input = new Scanner(System.in);
System.out.print("Enter an integer between 2 and 6 digits: ");
String number = input.next();
System.out.println(new StringBuilder(number).reverse()); //prints reverse number

09-11 03:07
查看更多