在java 中是否有一个字符串比较函数。

解决方案 »

  1.   

    用SimpleDateFormat转成Date类型
    然后用Date类的before或after方法来比较
      

  2.   

    使用String类中的compareTo()方法比较。如:s1.compareTo(s2)
    返回值为int型,
    等于0---两个字符串相等;
    小于0---s1小于s2;
    大于0---s1大于s2;
      

  3.   

    字符串比较函数:str1.equals(str2)
      

  4.   

    最懒的方法是去掉“-”,然后转成int比较就行了。
      

  5.   

    如果你的日期字符串是规则的(yyyy-MM-dd),那么可以直接进行字符串比较,
    如果是不规则(如:2003-2-5 和 2003-10-24),则要转换成日期类型,再比较两个日期的大小。
      

  6.   

    写个方法转换成标准的时间格式:"yyyy/MM/dd"
    public Timestamp toTimestamp(String dateString,
      String formatter)
    {
    SimpleDateFormat sdf = new SimpleDateFormat(formatter, Locale.US);
    GregorianCalendar gc = new GregorianCalendar();
    try
    {
    gc.setTime(sdf.parse(dateString));
    }
    catch (ParseException ex)
    {
    return null;
    }
    return new Timestamp(gc.getTime().getTime());
    }
    其中formatter就是时间格式,可以设置为:"yyyy/MM/dd"
    然后调用Timestamp类的方法after对两个时间进行比较。
    OK了吗?
      

  7.   

    Comparing Strings 
            String s1 = "a";
        String s2 = "A";
        String s3 = "B";
        
        // Check if identical
        boolean b = s1.equals(s2);           // false
        
        // Check if identical ignoring case
        b = s1.equalsIgnoreCase(s2);         // true
        
        // Check order of two strings
        int i = s1.compareTo(s2);            // 32; lowercase follows uppercase
        if (i < 0) {
            // s1 precedes s2
        } else if (i > 0) {
            // s1 follows s2
        } else {
            // s1 equals s2
        }
        
        // Check order of two strings ignoring case
        i = s1.compareToIgnoreCase(s3);      // -1
        if (i < 0) {
            // s1 precedes s3
        } else if (i > 0) {
            // s1 follows s3
        } else {
            // s1 equals s3
        }
        
        // A string can also be compared with a StringBuffer;
        // see e70 Constructing a String
        StringBuffer sbuf = new StringBuffer("a");
        b = s1.contentEquals(sbuf);          // true
      

  8.   

    UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!UP!接分◎!#◎!#
      

  9.   

    String a="2003-10-12";
    String b="2003-10-21";
    int result=a.compareTo(b);
    if (result==0)
    out.print("a=b");
    else if (result < 0 )
    out.print("a<b");
    else out.print("a>b");
      

  10.   

    这有一段javascript写的
    /********************************************************************************
    *   FUNCTION:       Compare Date! Which is the latest!
    *   PARAMETERS:     lessDate,moreDate AS String
    *   CALLS:          isDate,isBetween
    *   RETURNS:        TRUE if lessDate<moreDate
    *********************************************************************************/
    function isComdate (lessDate , moreDate)
    {
        if (!isDate(lessDate)) { return(false);}
        if (!isDate(moreDate)) { return(false);}
        var less1st = lessDate.indexOf('-');
        var less2nd = lessDate.lastIndexOf('-');
        var more1st = moreDate.indexOf('-');
        var more2nd = moreDate.lastIndexOf('-');
        var lessy = lessDate.substring(0,less1st);
        var lessm = lessDate.substring(less1st+1,less2nd);
        var lessd = lessDate.substring(less2nd+1,lessDate.length);
        var morey = moreDate.substring(0,more1st);
        var morem = moreDate.substring(more1st+1,more2nd);
        var mored = moreDate.substring(more2nd+1,moreDate.length);
        var Date1 = new Date(lessy,lessm,lessd); 
        var Date2 = new Date(morey,morem,mored); 
        if (Date1>Date2) { return(false);}
         return(true); 
            
    }
      

  11.   

    使用String类中的compareTo()方法比较。如:s1.compareTo(s2)
    但是这个方法有个缺点,就是要求两个参与比较的字符串的形式及长度必须相同才能够正确比较,否则,比较结果是错的.
    例如:
    s1 = "02";
    s2 = "12";
    这样比较是正确的.
    但如果是下面的样子,
    s1 = "2";
    s2 = "12";
    比较结果是错误的的