当前位置: 首页 > 知识库问答 >
问题:

比较SimpleDataFormat输出与数字[重复]

华俊弼
2023-03-14

我正在制作一个程序,每当时间达到一个小时,它就会执行一些东西。

代码如下:

import java.text.*;
import java.util.Date;
class NMAP {
 public static void main(String[] args) {
  DateFormat dateFormat = new SimpleDateFormat("HH");
  Date date = new Date();
  if (dateFormat.format(date).equals(17)) {
   System.out.println(dateFormat.format(date));
  }
 }
}

它应该输出17(因为现在是17:00),但不输出任何内容。

为什么不呢?

共有1个答案

楚俊逸
2023-03-14

您正在比较日期格式。等于(17)字符串与整数的比较

因为它们是不同的类型,所以无论如何都返回false。

你必须做dateFormat.equals("17")

因为有些时候你需要java8的强大功能:

LocalTime now = LocalTime.now();
System.out.println(now);
System.out.println(now.getHour() == 17);
 类似资料:
  • 问题内容: 我听说散列(即将字符串或对象转换为数字)用于字符串等,因为比较数字比字符串更容易。如果为真,这是什么原因? 问题答案: 不一定是这种情况,但大多数时候可能是这样。 请考虑以下情况: 我想比较字符串“ apples”和“ oranges”。如果我只想确定“ apples” ==“ oranges”,我只需要比较每个字符串的第一个字符:’a’!=’o’=>“ apples”!=“ oran

  • 可能重复: 比较浮点值 比较浮点值有多危险? 我不明白,为什么比较实数是编程中的一种不好的做法?当然,我理解实数可以用一定的精度来表示。你能给我解释一个不比较这类数字的重要理由吗?例子会很好,文章也是受欢迎的。事先谢谢你。

  • 最近,我一直在尝试构建一个程序,它可以完成4件事: 1) 从键盘输入一个单词。 2)用包含字母表字母的字符串的上下文检查这个单词的上下文。 3)将给定单词的字母与字母表字符串的字母进行比较,只要匹配,它将返回该字母在字母表字符串中的位置1。(例如。word='a'位置=1,因为'a'是第一个字母) 4) 获取所有这些位置的总和。(例如word='abc'总计=6) 现在让我向您展示我用代码编写的内

  • 我试图用lodash比较两个无序字符串数组。我尝试过使用函数,但它似乎没有达到我想要的效果。以下是我尝试过的: 谢了。

  • 我无法使用以下代码比较两个字符串: 我有一个名为“gender”的字符串,它将以“male”或“fomen”作为其值。 这不起作用,所以我尝试了以下几种: 又一次,没有奏效。请告诉我如何使用if语句比较字符串值。

  • 问题内容: 我是Java的新手,我一直在尝试实现一种用于查找三次方程式根的算法。当我计算判别式并尝试检查其相对于零的位置时,就会出现问题。 如果运行它并输入数字“ 1 -5 8 -4”,则输出如下: 我知道问题是因为双精度计算不精确。通常,判别式应为0,但最终变为0.00000000000000001236。 我的问题是,避免这种情况的最佳方法是什么?我是否应该检查数字是否介于零附近的ε之间?还是