String类

作者: 廷裕同学 | 来源:发表于2020-01-09 10:27 被阅读0次
"hello"这种方式创建字符串时,

-- jvm会检查字符串常量池中是否具备"hello"的字符串对象,
-- 如果不具备则在字符串常量池中创建该字符串对象
-- 如果该对象已经存在在内存中了,则直接返回该字符串的内存地址即可

new String("hello")这种方式创建字符串对象

-- jvm首先会检查字符串常量池中是否具备该字符串对象
-- 如果已经存在则不会再创建了
-- 如果不存在则在字符串常量池中创建该字符串的对象
-- 然后再去堆内存中创建字符串对象,返回堆内存中的字符串的内存地址

equals 默认情况下比较的是内存地址,String类重写了object的equals方法,比较的是字符串的内容是否一致
public class Demo1 {
    public static void main(String args[]){
        String str1 = "hello";
        String str2 = "hello";
        String str3 = new String("hello");
        String str4 = new String("hello");

        System.out.println("str1==str2?"+(str1==str2)); //true
        System.out.println("str2==str3?"+(str2==str3)); // false
        System.out.println("str3==str4?"+(str3==str4)); // false
        System.out.println("str2.equals(str3)?"+(str2.equals(str3))); // true
        System.out.println("str3.equals(str4)?"+(str3.equals(str4))); // true
    }
}

输出内容

str1==str2?true
str2==str3?false
str3==str4?false
str2.equals(str3)?true
str3.equals(str4)?true

相关文章

  • String

    1.String类2.String类和常量池3.String类常用的方法 1.String类 1.String类又...

  • String

    String UML类图 String 被 final 修饰,String 类不可被继承,不可变类。 String...

  • Java之String类

    String 1. String类基本特性 String类再Java类中也是一个很重要的类,String类的对象是...

  • string类

    string类 1. string类常用方法 2. string类常用方法2 3. string类的查找 判断字符...

  • 二十五、String与StringBuffer/StringBu

    一、 String类 1. String类概述 查阅API中的String类的描述,发现String 类代表字符串...

  • String类概述及其构造方法

    构造方法 String类的判断功能 String类的获取功能 String的转换功能 String类的其他功能

  • Java String总结

    Java String总结 String 类 String类定代码如下: 从代码看有两点需要注意: String类...

  • 8.2-全栈Java笔记:字符串相关类(String/Strin

    字符串相关类(String/StringBuilder /StringBuffer) String类 String...

  • 10.常用API—String

    常用API(String,ArrayList) String String类概述 String类定义的变量可以用于...

  • 第四章 复合类型(3)string类简介

    (三)string类简介 1.string类的优势: 使用string类的时候,必须在头文件中包含string,...

网友评论

      本文标题:String类

      本文链接:https://www.haomeiwen.com/subject/ltqyactx.html