欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java String的intern用法解析

 更新時(shí)間:2019年10月21日 08:28:52   作者:百變小超  
這篇文章主要介紹了Java String的intern用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了Java String的intern用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

在Java6中,intern方法返回的是對應(yīng)字符串在永久態(tài)(方法區(qū))中的地址;Java7以后,intern方法返回的是該字符串首次創(chuàng)建時(shí)候的堆內(nèi)存的地址;

在java7中:

package com.ecarx.daa.data.manager.utils;

public class StringTest {
  public static void main(String[] args) {
    String a = new StringBuffer("a").append("a").toString();
    String b = new StringBuffer("a").append("a").toString();
    System.out.println(a == b); // false
    if (a.intern() == a) { //true
      System.out.println("intern method was == the first object"); 
    }
    System.out.println(a.intern() == b); //false

    System.out.println(b.intern() == b); //false
    System.out.println(a.intern() == b.intern()); //true
  }
}

toString方法,每次會(huì)返回一個(gè)新的堆內(nèi)存的地址,因此a不等于b;

由于intern方法等于首次創(chuàng)建的對象的堆地址,因此 a.intern() == a 成立;但 a.intern() == b 不成立;

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論