zoukankan      html  css  js  c++  java
  • Java基础(一)字符串之如何比较字符串

    在Java中,如何进行字符串的比较?Java为我们提供了compareTo、“==”、equals对字符串进行比较,下面介绍一下他们的区别。

    示例一:compareTo比较数据的大小

    compareTo(string)
    compareToIgnoreCase(String)
    compareTo(object string)

    该示例通过使用上面的函数比较两个字符串,并返回一个int类型。若字符串等于参数字符串、则返回0,字符串小于参数字符串、则返回值小于0,字符串大于参数字符串、返回值大于0。

    判断字符串大小的依据是根据他们在字典中的顺序决定的。

    package com.de.test;
    
    /**
     * Java字符串比较大小
     */
    public class StringA {
        public static void main(String[] args){
            String str = "String";
            String anotherStr = "string";
            Object objstr = str;
            System.out.println(str.compareTo(anotherStr));
            System.out.println(str.compareToIgnoreCase(anotherStr));
            System.out.println(str.compareTo(objstr.toString()));
        }
    }

    执行上面代码产生下面结果

    -32
    0
    0

    示例二:使用equals(),“==”方式比较字符串

      使用equals()和==,区别在于equals比较的是内容是否相等、==比较的是引用的变量地址是否相等。

    package com.de.test;
    
    public class StringA {
        public static void main(String[] args){
            String s1 = "hello";
            String s2 = "hello";
            String s3 = new String("hello");
            String s4 = new String("hello");
            System.out.println("s1:" + s1);
            System.out.println("s2:" + s2);
            System.out.println("s3:" + s3);
            System.out.println("s4:" + s4);
            System.out.println("----------比较内容是否相等---------------");
            System.out.println(s1.equals(s2));
            System.out.println(s2.equals(s3));
            System.out.println(s3.equals(s4));
            System.out.println("----------比较引用地址是否相等---------------");
            System.out.println(s1 == s2);
            System.out.println(s2 == s3);
            System.out.println(s3 == s4);
        }
    }

    执行上面代码产生下面结果

    s1:hello
    s2:hello
    s3:hello
    s4:hello
    ----------比较内容是否相等---------------
    true
    true
    true
    ----------比较引用地址是否相等---------------
    true
    false
    false
  • 相关阅读:
    iOS开发——高级篇——iOS中常见的设计模式(MVC/单例/委托/观察者)
    object_getClassName swift得到类名
    UIGestureRecognizerDelegate设置响应事件优先级
    String to Double in swift
    Unable to boot device in current state:Booted
    xcode Indexing | Loading index...
    swift String to UTF8编码
    进入沙盒目录
    swift objective-c混编操作
    storyboard plain style unsupported in a navigation item
  • 原文地址:https://www.cnblogs.com/yiyidajiaoya/p/8316883.html
Copyright © 2011-2022 走看看