java基礎入門 還原字串的拼接的過程

2021-09-02 10:35:29 字數 1085 閱讀 5328

平常我們很多時候都會使用字串的拼接,但是為什麼使用「+」號就是比stringbuilder慢,而且慢很多?

實驗

package com.ray.teststring;

/** * 對比拼接字串的兩種方式

* * @author ray

* @since 2015-04-19

* @version 1.0

* */

public class stringjoint

} /**

* 使用stringbuilder拼接

*/public void stringjointwithstringbuilder()

} public static void main(string args)

}

下面我們先輸出+號操作裡面的東西

package com.ray.teststring;

/** * 對比拼接字串的兩種方式

* * @author ray

* @since 2015-04-19

* @version 1.0

* */

public class stringjoint

} /**

* 使用stringbuilder拼接

*/public void stringjointwithstringbuilder()

} public static void main(string args)

}

輸出結果:

true

false

true

false

true

false

從結果上面來看,裡面兩個物件一直都是交錯的不相同

下面我們來還原一下+號的操作:

str += "a";等價於

stringbuilder sb = new stringbuilder();
這兩句的執行,所以在+的同時不斷的new新的物件,所以導致效能低下

字串還原

小k是一位蔚藍教主的崇拜者 orz教主er 有一天,他收到了一封匿名信,信告訴了小k由於他表現出色,得到了一次當面orz教主的機會,但是要當面orz教主可不那麼容易,不是每個人都有資格orz教主的。所以要破解下面一段密文才可以得到相關的資訊,信中有提供加密的規則,但是小k覺得這個問題看似複雜,所以想...

Java 基礎 字串

string 物件建立後則不能被修改,是不可變的,所謂的修改其實是建立了新的物件,所指向的記憶體空間不同。如下所示 執行結果 結合上面的 關於字串小夥伴們必須需要了解滴 1 通過 string s1 愛慕課 宣告了乙個字串物件,s1 存放了到字串物件的引用,在記憶體中的存放引用關係如下圖所示 2 一...

字串基礎入門應用

include intmain printf yingwen d nshuzi d nkongge d nzifu d yingwen,shuzi,kongge,zifu return0 strlen所作的是乙個計數器的工作,它從記憶體的某個位置 可以是字串開頭,中間某個位置,甚至是某個不確定的記憶...