所以我正在尝试编写这个java程序,它将检查并显示0到10000之间的所有回文数字。方法isPalindrome必须接受int数,如果number是回文,则返回一个布尔值true,如果number不是回文,则返回一个false。
这是到目前为止的代码,但当我运行它时,它只打印一行1,我在最后添加的打印是为了调试和检查该方法是否工作,但在这种情况下它不工作。我还将numCount初始化为1,因为当num必须大于0时,我不知道如何使方法工作。将numCount初始化为0将使程序跳过整个num>0部分。
null
import javax.swing.*;
import java.text.*;
public class PalindromeCheck
{
public static void main(String [] args)
{
//variables
int numCount = 1;
final int END = 10000;
boolean palindrome;
//methods
palindrome = isPalindrome(numCount, END);
}//end main
public static boolean isPalindrome(int numCount, int END)
{
//local variables
int num, num2 = numCount, remainder, reverseNum;
boolean palindrome;
palindrome = false;
while (numCount <= END)
{
num = numCount;
remainder = 0;
reverseNum = 0;
while (num > 0)
{
remainder = num % 10;
num = num / 10;
reverseNum = (reverseNum * 10) + remainder;
if (reverseNum == num2)
{
palindrome = true;
}
else
{
palindrome = false;
}
if(palindrome == true)
{
System.out.print(" " + reverseNum);
}
}//end Minor Loop
numCount++;
}//end of Major Loop
return palindrome;
}//end of method isPalindrome
}//end of class
您可以使用此方法查找回文,而不使用StringBuilder
public boolean isPalindrome(int number){
//number=12321
int num = number;
//reversing number
int reverse=0,rmd;
while(number > 0)
{
rmd = number % 10;
reverse = reverse * 10 + rmd;
number = number / 10;
}
if(reverse == num)
//true
else
//false
}
检查给定的数字是否在给定范围内。 使用算术比较来检查给定的数字是否在指定的范围内。如果没有指定第三个参数 end ,则范围被认为是从 0 到 start 。 const inRange = (n, start, end = null) => { if (end && start > end) end = [start, (start = end)][0]; return end == nu
所以我必须写一个程序,找到给定范围之间的所有回文数。程序必须使用numDigits()方法,该方法接受int数并返回该int的位数。 一个isPalindrome()方法,它将接受一个int数字,并返回一个布尔值true或false,无论该数字是否回文 我在这里编码了一个numDigit()方法: 我知道如何用另一种方法找到回文,但作业是专门针对这种技术的。我如何实现这个numDigit()方法来
问题内容: 我需要检查当前时间是否在8 AM和3 PM之间。如果在这些时间范围之间,那么我需要返回yes,否则返回false。 但是我不确定我应该在这里使用吗?我可以不使用时间戳并相应地检查时间戳吗?什么是正确的方法? 我仍在使用Java 7。 问题答案: 如果您使用的是Java 8之前的Java版本,请查看Joda的API文档。 具体来说,有一个AbstractInterval#contains
我试图写一个方法来检查一个给定的单词是否是回文,但到现在为止它还不能工作。我怀疑错误出在if语句中,而且您没有将对象(如字符串)与==进行比较,而是与equals进行比较,对吗?但是Java不允许我写:if(firstthalf.charat(i).equals(secondhalf.charat(j))),那么我该怎么做才能使它工作呢?代码中还有其他错误吗? null null 提前道谢! /尼
本文向大家介绍用于检查给定字符串是否为Heterogram的Java程序,包括了用于检查给定字符串是否为Heterogram的Java程序的使用技巧和注意事项,需要的朋友参考一下 如果一个字母中的字母不只出现一次,则该字符串为Heterogram。一个例子如下: 此字符串是一个Heterogram,因为字符串中的每个字母仅出现一次。 演示该程序的程序如下。 示例 输出结果 现在让我们了解上面的程序
问题内容: 如果有和,如何检查用户给出的日期是否在该范围内? 例如 目前日期是字符串,将它们转换为时间戳整数是否有帮助? 问题答案: 使用strtotime将它们转换为时间戳是正确的方法,例如