java怎么比较时间的大小 java biginteger如何比较大小?
java\u4ee3\u7801\u4e2d\u600e\u4e48\u6bd4\u8f83\u65f6\u95f4\u7684\u5927\u5c0f\u6bd4\u8f83getTime\u83b7\u53d6\u7684\u6574\u6570\u503c\u5927\u5c0f\u5373\u53ef\uff0c\u6574\u6570\u503c\u5927\u7684\u65f6\u95f4\u5c31\u5927\uff0c\u6574\u6570\u503c\u5c0f\u7684\u65f6\u95f4\u5c31\u5c0f
\u4f8b\u5982\uff1a
public int compareDate(Date d1,Date d2){ if (dt1.getTime() > dt2.getTime()) { System.out.println("dt1 \u5728dt2\u524d"); return 1; } else if (dt1.getTime() < dt2.getTime()) { System.out.println("dt1\u5728dt2\u540e"); return -1; } else {//\u76f8\u7b49 return 0; } }
\u8fd8\u6709\uff1a
import java.text.SimpleDateFormat;import java.util.Date;public class Date_Test {public static void main(String[] args) {Date d1 = new Date(); //\u7b2c\u4e00\u4e2a\u65f6\u95f4Date d2 = new Date(); //\u7b2c\u4e8c\u4e2a\u65f6\u95f4SimpleDateFormat f = new SimpleDateFormat("hhmmss"); //\u683c\u5f0f\u5316\u4e3a hhmmssint d1Number = Integer.parseInt(f.format(d1).toString()); //\u5c06\u7b2c\u4e00\u4e2a\u65f6\u95f4\u683c\u5f0f\u5316\u540e\u8f6c\u4e3aintint d2Number = Integer.parseInt(f.format(d2).toString()); //\u5c06\u7b2c\u4e8c\u4e2a\u65f6\u95f4\u683c\u5f0f\u5316\u540e\u8f6c\u4e3aintif(d1Number>d2Number){System.out.println("\u65f6\u95f4d1\u5927");System.out.println(d1Number); }else{System.out.println("\u65f6\u95f4d2\u5927");System.out.println(d2Number);}}}
compareTo\u65b9\u6cd5\u6765\u6bd4\u8f83\uff0c\u5c0f\u4e8e\u5219\u8fd4\u56de-1\uff0c\u7b49\u4e8e\u5219\u8fd4\u56de0\uff0c\u5927\u4e8e\u5219\u8fd4\u56de1
BigInteger a1 = new BigInteger("1");BigInteger a2 = new BigInteger("2");a1.compareTo(a2);
\u4e0b\u9762\u7684\u4f8b\u5b50\u663e\u793amath.BigInteger.compareTo()\u65b9\u6cd5\u7684\u7528\u6cd5
package com.yiibai;import java.math.*;public class BigIntegerDemo {public static void main(String[] args) {// create 2 BigInteger objectsBigInteger bi1, bi2;bi1 = new BigInteger("6");bi2 = new BigInteger("3");// create int objectint res;// compare bi1 with bi2res = bi1.compareTo(bi2);String str1 = "Both values are equal ";String str2 = "First Value is greater ";String str3 = "Second value is greater";if( res == 0 )System.out.println( str1 );else if( res == 1 )System.out.println( str2 );else if( res == -1 )System.out.println( str3 );}}
\u8ba9\u6211\u4eec\u7f16\u8bd1\u548c\u8fd0\u884c\u4e0a\u9762\u7684\u7a0b\u5e8f\uff0c\u8fd9\u5c06\u4ea7\u751f\u4ee5\u4e0b\u7ed3\u679c\uff1a
First Value is greater
例子:
String beginTime=new String("2017-06-09 10:22:22");
String endTime=new String("2017-05-08 11:22:22");
直接用Date自带方法before()和after()比较
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date sd1=df.parse(beginTime);
Date sd2=df.parse(endTime);
System.out.println(sd1.before(sd2));
System.out.println(sd1.after(sd2));
用String的compareTo()方法:
Integer i=beginTime.compareTo(endTime);
System.out.println(i);
返回正值是代表左侧日期大于参数日期,反之亦然,日期格式必须一致
转成date格式换成秒数比较秒数大小,getTime()方法
Date sd1=df.parse(beginTime);
Date sd2=df.parse(endTime);
long long1 =sd1.getTime()
long long2= sd2.getTime()
扩展资料:
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
参考资料:java文档date类
package com.huawei.timetest;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TimeTest
{
public static void main(String[] args)
{
String t1 = "9:00";
String t2 = "10:00";
String result = largerTime(t1,t2);
System.out.println(result);
}
private static String largerTime(String t1,String t2)
{
Date date1 ,date2;
DateFormat formart = new SimpleDateFormat("hh:mm");
try
{
date1 = formart.parse(t1);
date2 = formart.parse(t2);
if(date1.compareTo(date2)<0)
{
return t2;
}
else
{
return t1;
}
}
catch (ParseException e)
{
System.out.println("date init fail!");
e.printStackTrace();
return null;
}
}
}
希望您采纳!
如果只是时和分的话
你可以写一个方法:参数(time1,time2)
第一步:split(":")
第二步:时 和 分 分别比较大小(Integer.parseInt(t))
return boolean
仅仅是一天内的对比么? 自己写个算法就行了
绛旓細String beginTime=new String("2017-06-09 10:22:22");String endTime=new String("2017-05-08 11:22:22");鐩存帴鐢―ate鑷甫鏂规硶before()鍜宎fter()姣旇緝 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date sd1=df.parse(beginTime);Date sd2=df.parse(endTime);Sy...
绛旓細鏂规硶涓锛氫袱涓狣ate绫诲瀷鐨勫彉閲忓彲浠ラ氳繃compareTo鏂规硶鏉ユ瘮杈銆傛鏂规硶鐨勬弿杩版槸杩欐牱鐨勶細濡傛灉鍙傛暟 Date 绛変簬姝 Date锛屽垯杩斿洖鍊 0锛涘鏋滄 Date 鍦 Date 鍙傛暟涔嬪墠锛屽垯杩斿洖灏忎簬 0 鐨勫硷紱濡傛灉姝 Date 鍦 Date 鍙傛暟涔嬪悗锛屽垯杩斿洖澶т簬 0 鐨勫笺傛柟寮忎簩锛欴ate.after锛堬級杩欐牱鐨勬柟寮忎笉鑳芥瘮杈冨嚭鐩哥瓑鐨勬椂闂淬
绛旓細鍙互鐢╝.before(b) 鏉ユ瘮杈锛岃繖涓殑鎰忔濆氨鏄痑鐨勬椂闂村湪b鍓嶃傝繑鍥炵殑鏄竴涓猙oolean鍨嬬殑鍙橀噺
绛旓細public static String getDatePoor(Date endDate, Date nowDate) { long nd = 1000 * 24 * 60 * 60;//姣忓ぉ姣鏁 long nh = 1000 * 60 * 60;//姣忓皬鏃舵绉掓暟 long nm = 1000 * 60;//姣忓垎閽熸绉掓暟 long diff = endDate.getTime() - nowDate.getTime(); // 鑾峰緱涓や釜鏃堕棿鐨姣...
绛旓細java姣旇緝涓や釜鏃堕棿鐩稿樊锛鍙互浣跨敤calender绫荤殑api锛屽疄渚嬪涓嬶細package com.test;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/ description 鏃ユ湡姣旇緝澶 鏈 骞 author www.javawind.net / public class DateTest { public static void ...
绛旓細涓绉嶆濊矾锛氱敤 SimpleDateFormat 鏉ュ鐞嗭紝鍙互杞垚long褰㈠紡鐨勶紝閭f槸1970骞1鏈1鏃ヨ捣鍒扮幇鍦ㄧ殑姣鏁般傚彲浠ョ洿鎺ユ瘮澶у皬浜嗐傚彟澶栦竴绉嶆濊矾锛氬洜涓轰綘杩欓噷鏄敤鐨勮ˉ鍏ㄦ牸寮(7鏈堝啓鎴愪簡07)锛岄偅涔堝彲浠ョ洿鎺ュ瓧闈㈣浆浜姣旇緝 public static void main(String[] _s) { String str1 = "2010-07-16 12:00:00";long ...
绛旓細println("褰撳墠鏃堕棿鏅氫簬06:00");break;case -1:System.out.println("褰撳墠鏃堕棿鏃╀簬06:00");break;default:break;}}/** * 鏍规嵁鏃堕棿绫诲瀷姣旇緝鏃堕棿澶у皬 * * @param source * @param traget * @param type "YYYY-MM-DD" "yyyyMMdd HH:mm:ss" 绫诲瀷鍙嚜瀹氫箟 * @param 浼犻鏃堕棿鐨瀵规瘮鏍煎紡 *...
绛旓細java.lang.String.compareTo(String)public int compareTo(String anotherString)鎸夊瓧鍏搁『搴姣旇緝涓や釜瀛楃涓层傝姣旇緝鍩轰簬瀛楃涓蹭腑鍚勪釜瀛楃鐨 Unicode 鍊笺傚皢姝 String 瀵硅薄琛ㄧず鐨勫瓧绗﹀簭鍒椾笌鍙傛暟瀛楃涓叉墍琛ㄧず鐨勫瓧绗﹀簭鍒楄繘琛屾瘮杈冦傚鏋滄寜瀛楀吀椤哄簭姝 String 瀵硅薄鍦ㄥ弬鏁板瓧绗︿覆涔嬪墠锛屽垯姣旇緝缁撴灉涓轰竴涓礋鏁存暟銆傚鏋滄寜...
绛旓細Date now = new Date();int hours = now.getHours();int minutes = now.getMinutes();System.out.println(hours + " " + minutes);if ((hours == 9 && minutes >= 30) || (hours >= 10 && hours < 15)){ System.out.println("9:30 - 15:00");} ...
绛旓細鍏堣浆鎴 Calendar, 鍐嶅彇鍏朵腑鐨 HOUR_OF_DAY 杩欎釜鍩, 鐪嬫槸鍚﹀ぇ浜 18 姣斿 Timestamp ts = new Timestamp(System.currentTimeMillis());Calendar cal = Calendar.getInstance();cal.setTime(ts);System.out.println(cal.get(Calendar.HOUR_OF_DAY));涓や釜 Timestamp 鏈韩鍙互鐩存帴姣, 瀹冨疄鐜颁簡 ...