是在JAVA中使用本地日期时间之后

时间:2017-08-11 13:12:13

标签: java datetime localdate

我在JAVA中面临localDateTime的问题。

我使用isAfter函数来比较两个日期时间,但只有在时间变化而不是日期时才返回正确的值。

程序:

2017-08-11T18:32:00.466
2017-08-11T18:32:10.467
2017-08-11T18:32:00.466 After 2017-08-11T18:32:10.467
2017-08-11T18:32:10.467 After 2017-08-11T18:32:00.466

输出实际

2017-08-11T18:32:00.466
2017-08-11T18:32:10.467
2017-08-11T18:32:00.466 After 2017-08-11T18:32:10.467
2017-08-11T18:32:10.467 Not After 2017-08-11T18:32:00.466

预期

<?php 
//$searchterm = "acer predator 21x";
//$searchres =  urlencode($searchterm);
$reffer = "https://www.google.com/";
$string = "https://www.google.com/search?site=&source=hp&q=acer+predator+21x&oq=acer+predator+21x&gs_l=psy-ab.3...116308.122177.0.126746.0.0.0.0.0.0.0.0..0.0....0...1.1.64.psy-ab..0.0.0.jZC5TmHjRnI
";  
$LOGINURL = trim(preg_replace('/\s\s+/', ' ', $string));

$agent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0";

    $ch = curl_init(); 

    curl_setopt($ch, CURLOPT_URL,$LOGINURL);

    curl_setopt($ch, CURLOPT_USERAGENT, $agent);

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 

    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

    curl_setopt($ch, CURLOPT_REFERER, $reffer);


    $result = curl_exec ($ch);
  if(curl_error($ch)) {
        echo "error ".curl_errno($ch)."<br / >";
        echo "error ".curl_error($ch);
    }
    curl_close ($ch);

    echo $result;

 ?>

这是预期的行为还是我错过了什么?

1 个答案:

答案 0 :(得分:6)

为什么期望18:32:1018:32:00之前?

您可能会被代码中的拼写错误所误导:

if (dateTime1.isAfter(dateTime)) {
  System.out.println(dateTime + " After " + dateTime1);
                            ^^^                   ^^^
}

应该是:

if (dateTime1.isAfter(dateTime)) {
  System.out.println(dateTime1 + " After " + dateTime);
                            ^^^                    ^^^
}