试图找到最大的回文,变量没有更新[重复](Trying to find largest palindrome, variable not updated [duplicate])

编程入门 行业动态 更新时间:2024-10-24 08:31:48
试图找到最大的回文,变量没有更新[重复](Trying to find largest palindrome, variable not updated [duplicate])

这个问题在这里已有答案:

如何比较Java中的字符串? 23个答案

所以我试图找到2个3位数字的最大产品,这是一个回文。 这是我的代码:

class project_euler4 { public static int largest_palindrome = 0; public static boolean isPalindrome(int number) { String original = Integer.toString(number); String reversed = new StringBuffer(original).reverse().toString(); return (original == reversed) ? true : false; } public static void main(String[] args) { for (int i = 100; i < 1000; i++) { for (int j = 100; j < 1000; j++) { int candidate = i * j; if (isPalindrome(candidate) && candidate > largest_palindrome) { largest_palindrome = candidate; } } } System.out.println("The largest palindrome made from the product of 2 3-digit numbers is " + largest_palindrome); } }

当我编译并运行时,我得到:

The largest palindrome made from the product of 2 3-digit numbers is 0

因此,出于某种原因,当产品回文时,我的largest_palindrome变量没有得到更新。 我怀疑它与我的isPalindrome()函数有关,但我不确定。

有任何想法吗?

感谢Mariogs的帮助

This question already has an answer here:

How do I compare strings in Java? 23 answers

So I'm trying to find the largest product of 2 3-digit numbers that is a palindrome. Here's my code:

class project_euler4 { public static int largest_palindrome = 0; public static boolean isPalindrome(int number) { String original = Integer.toString(number); String reversed = new StringBuffer(original).reverse().toString(); return (original == reversed) ? true : false; } public static void main(String[] args) { for (int i = 100; i < 1000; i++) { for (int j = 100; j < 1000; j++) { int candidate = i * j; if (isPalindrome(candidate) && candidate > largest_palindrome) { largest_palindrome = candidate; } } } System.out.println("The largest palindrome made from the product of 2 3-digit numbers is " + largest_palindrome); } }

When I compile and run, I get:

The largest palindrome made from the product of 2 3-digit numbers is 0

So for some reason, my largest_palindrome variable isn't getting updated when a product is a palindrome. I suspect it has something to do with my isPalindrome() function, but am not sure.

Any ideas?

Thanks for the help, Mariogs

最满意答案

您使用==而不是.equals()来比较字符串。 经典错误。

You used == instead of .equals() to compare the strings. Classic mistake.

更多推荐

本文发布于:2023-07-31 01:38:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1340554.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:回文   变量   find   largest   duplicate

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!