我需要编写一个程序来从用户接收一个数字,使用user = defined方法来反转数字,然后将数字作为整数返回。以下是我到目前为止的情况。我试图看看我是否可以从数组中取出每个数字,并以某种方式将它们组合成一个整数。我需要将它们作为字符串放在一起,然后将其转换为整数吗?还是有更简单的方法来做到这一点?
import java.util.*;
public class UserDefinedMethods
{
static Scanner keyboard = new Scanner(System.in);
public static int reverseDigits(int num)
{
int reverse[];
int i = 0;
int out = 0;
do
{
if (num < 0)
num = (num * -1);
reverse[i] = num % 10;
num = num/10;
i++;
}
while (num > 0);
out =
return reverse; //HERE IS MY PROBLEM I BELEIVE.
}
public static void main(String[] args)
{
int number = 0;
int output = 0;
System.out.println("Please enter a number:");
number = keyboard.nextInt();
output = reverseDigits(number);
System.out.println(output);
}
}
答案 0 :(得分:1)
可以按如下方式撤销int
:
result
设为零。以下是如何在Java中选择的东西:
int lastDigit = number % 10;
number /= 10;
result *= 10;
result += lastDigit;
答案 1 :(得分:0)
好的,首先,您尝试反向返回数组,但是您的方法声明设置为返回int(不是int [])。其次,您的代码可以简化如下:
public static int reverseDigits(int num){
int reverse = 0;
while(num != 0){
reverse *= 10;
reverse += (num % 10);
num /= 10;
}
return reverse;
}
希望这有帮助! :)