新Java学生的基本问题

我是Java的新手,我没有其他编程经验。 我正在努力完成一个家庭作业问题而且我到目前为止还没有。 我非常确定这个问题对于这个社区非常简单,但我想请求lemans条款帮助。

问题:编写一个名为reverse的方法,它将int作为参数并返回一个int。 该方法反转给定数字的数字并返回它。 如果给出5433,则该方法返回3345。

使用任意值调用main中的方法,并将结果打印到屏幕上。

(到目前为止,这是我的代码snippit :(我怎么做反向提到?它可能非常简单,但显然我需要帮助)提前谢谢!)

// Exercise 2.8.3 public class BlackBelt8 { public static void main(String[] args) { reverse(5433); } public static int reverse(int x){ System.out.println(x); return x; } } 

更新:我完成了所有建议的解决方案。 谢谢

有两种方法可以做到这一点。 我不会给你代码,但希望我会把你带到正确的方向。

  1. 您可以将整数转换为字符串并反转字符串。 然后将其转回整数。 如果你想这样做,我建议看看Integer.parseInt和String.valueOf。

  2. 这可能是更好的方法。 编程语言中的整数将仅返回答案的商。 所以当你做5/2时,它返回2. 模数返回除法的余数。 因此5%2(%是模运算符)将等于1。

注意你可以使用10的除法和模来反转整数。

正如其中一条评论中所提到的,您只想从函数中返回结果。 从反向函数中删除System.out.println并将其放在main中。 所以你会这样称呼它:

 public static void main(String[] args) { System.out.println(reverse(123)); } 

编辑:这是对评论的回应。

在Java中,有两种类型的数据。 本机类型和对象。 本机类型是int,double,float,long,byte和char。 这些是不是对象的唯一类型,并且它们不存在toString。 它们中的每一个都有一个可以使用的对象。 例如,int的对象是Integer。

其他所有东西都是一个对象,它是从基类Object派生出来的,与面向对象的编程有关 。 toString方法用于为其所调用的任何对象提供人类可读的字符串表示。

任何类都可以拥有自己的toString方法实现,该方法将返回(理想情况下)一个人类可读的字符串。

反向123是321观察到123 = 100 * 1 + 10 * 2 + 1 * 3和321 = 1 * 1 + 10 * 2 + 100 * 3

你如何在1,2,3中拆分123? 你如何遍历所有数字?
你熟悉循环结构吗? 你知道什么是剩余部分吗?

x = Integer.parseInt(x.toString()。Reverse());