String與StringBuffer的區別?

2021-10-08 10:48:38 字數 1253 閱讀 8647

string:

1.string建立的物件是不可變的,一旦建立不可改變

2.物件值可以改變其實是建立了乙個新的物件,然後把新的值儲存進去(如圖1)

3.string類被final修飾,不可以被繼承

4.string建立的物件的值存在於常量池,不用的時候不會被銷毀

5.string執行時間較長

6.string適用於比較短而小的字串

1.stringbuffer建立的物件是可變的

2.它的改變不像string那樣重新建立物件,而是通過構造方法(如圖2)

3.stringbuffer建立的物件的值存在於棧區,不用的時候會被銷毀

4.stringbuffer執行時間較短

5.stringbuffer適用於比較長的字串、比較多的字串

接下來用**來測試string和stringbuffer執行時的區別

package com.feisi.test;

public class test2

double end1 = system.currenttimemillis();

system.out.println(str1);

//列印stringbuffer消耗的時間

double start2 = system.currenttimemillis();

stringbuffer str2 = new stringbuffer("abc");

for(int i=0;i<100;i++)

double end2 = system.currenttimemillis();

system.out.println(str2);

}}

執行結果如圖:

今天學習了string與stringbuffer的區別,也額外收穫了一些其他的知識,比如:

1.字串加數字列印出來還是字串

2.double start1 = system.currenttimemillis();//當前的時間,單位毫秒

String與string的區別

1 string是乙個類,string是一種資料型別.2 string是c 中的類,string是.net framework的類 在c ide中不會顯示藍色 3 c string對映為.net framework的string 4 如果用string,編譯器會把它編譯成string,所以如果直接用...

string與string標頭檔案

先來段 我是在vs2012上實驗的 include stdafx.h include include include using namespace std int tmain int argc,tchar argv cout endl for rit mapstudent.rbegin rit m...

String與string的區別

c 是區分大小寫的,但是我卻發現c 中同時存在string與string,於是我很困惑,於是我上網搜尋了一下,於是我了解了一些小知識。msdn中對string的說明 stringis analiasforstringin the net framework。string是string的別名而已,st...