我正在研究一个问题,我需要操作大量的回文列表到一定数量的数字.这应该适用于15位数的数字.我见过的最常见的方法是迭代每个数字并检查每个数字是否为回文然后将其添加到列表中.这是我在java中的实现,它工作正常.
public class Palindrome {
public ArrayList<Long> List = new ArrayList<Long>();
public double d;
public Palindrome(double digits) {
this.d = digits;
long dig = (int)(Math.pow(10,digits));
for (long i = 1; i <= dig; i++) {
long a = i;
long b = inverse(a);
if (a == b) {
List.add(a);
}
}
public long inverse(long x){
long inv = 0;
while (x > 0) {
inv = inv * 10 + x % 10;
x = x / 10; …Run Code Online (Sandbox Code Playgroud) 我最近在我的课程中学习了反射,并获得了使用 Java 反射从 XML 文件创建对象的作业。通过搜索这个网站,我注意到似乎有一个普遍的共识,即使用反射,特别是以这种方式,是一个坏主意。对我来说很奇怪,因为我们被告知这是我们本学期将学习的最有用的东西之一。
我无法控制我的任务,所以无论如何我都必须以这种方式完成它。但我想知道,什么时候使用反射是一种好的做法?您可能有哪些行业示例,其中反思是解决问题的最佳方式?