導航:首頁 > 編程語言 > java的append方法

java的append方法

發布時間:2022-12-23 00:11:37

java如何定義類似append().append()......這類的方法

方法內部業務處理完後返回對象本身,如下:

publicclassTest{

privateStringvalue;

publicTest(Stringvalue){
this.value=value;
}

publicTestappend(Stringstring){
value+=string;
returnthis;
}

@Override
publicStringtoString(){
returnvalue;
}

publicstaticvoidmain(String[]args){
Testtest=newTest("a").append("b").append("c").append("d");

System.out.println(test.toString());
}
}

Ⅱ Java的StringBuffer類中insert和append方法的區別

從意思中也看的出來,insert --插入;append---添加,一個在任意位置加新內容,一個在末尾。prepend就是在前面加了。

Ⅲ java語言:String類的concat方法與StringBuffer類的append方法區別內存狀態

首先我們先看幾個概念:

1:在java內部是對+進行了重載,在處理String的過程中要創建一個StringBuffer對象,用StringBuffer對象的append方法對字元串進行連接,最後調用toString方法返回String字元串。

2: +和concat操作,是先開辟一個要拼接的字元串的空間,在和老字元串一起拼接成一個新的字元串,所以在堆內存中是創建了三塊空間的;

然後先來說1和2的區別:line1: 用的是+,+在底層是通過StringBuffer對象的append方法對字元串進行連接,但是他也並不是直接添加的,我們看看他開辟了幾塊空間?「abc」「def」「ghi」,剛開始開辟了三塊堆內存空間,執行一次+,「abcdef」這是第四塊內存空間,最後是最終結果「abcdefghi」開辟了第五塊堆內存空間,然後其餘的被回收。

line2:同樣也是開辟了五塊堆內存空間,concat()和+號的區別我們可以看下concat()源代碼:

publicStringconcat(Stringstr){
intotherLen=str.length();
if(otherLen==0){
returnthis;
}
intlen=value.length;
/*Of數組復制,Of()的第二個自變數指定要建立的新數組長度,
如果新數組的長度超過原數組的長度,則保留為默認值null或0*/
charbuf[]=Arrays.Of(value,len+otherLen);
//將字元從此字元串復制到目標字元數組,len為數組中的起始偏移量
str.getChars(buf,len);
returnnewString(buf,true);
}

我們可以看到concat()方法是通過Of(),和getChars();兩個方法來拼接數組的。+在底層是通過StringBuffer對象的append方法對字元串進行連接。

最後是StringBuffer:StringBuffer使用時,只會開辟一塊內存空間,使用append添加或delete刪除其內容時,也是在這一塊內存空間中並不會生成多餘的空間。所以速度是比較快的而String 每次生成對象都會對系統性能產生影響,特別當內存中無引用對象多了以後, JVM 的 GC 就會開始工作,對速度的影響一定是相當大的。

Ⅳ java中用append()方法輸出26個大寫字母的代碼

你好,我按照你的要求寫的代碼如下,可以直接運行

public class test2 {
public static void main(String[] args) {
StringBuffer str = new StringBuffer();
for (int i = (int) 'A', length = (int) 'Z'; i <= length; i++) {
str.append((char) i);
}
System.out.println(str);
}
}

運行結果:ABCDEFGHIJKLMNOPQRSTUVWXYZ

Ⅳ 關於一個java構造函數中的append方法操作的問題。

這么解釋吧,java裡面的方法的參數,只是把當前對象指向的地址給參數,
你的這個方法里
StringBuffer a=new StringBuffer("A");
//這一行,假設a指向了內存地址為4000的地方
StringBuffer b=new StringBuffer("B");
//這一行,假設b指向了內存地址為5000的地方
method(a,b);
//這個方法只是把a和b的地址傳了過去。x指向4000,y指向5000,a與b還是指向原來的地址。
x.append(y);
//這句將a指向地址的內容變了。
y=x
//只是將y指向的地址發生變化,變為4000,而main程序中的b還指向5000
所以在main程序中輸出時,還是B,因為那塊內存的內容沒有變化。
這么解釋明白么?

Ⅵ 請詳細說一下java中append()的方法.

StringBuffer裡面的方法吧,字元緩沖對象追加信息
比如說:StringBuffer
sb=new
StringBuffer();現在sb裡面什麼也沒有
sb.append("abc");可以將字元串abc追加進sb裡面.你列印sb會列印出abc
當然你還可以拉著追加

Ⅶ java中append方法有什麼用 builder對象可以代表哪些字元 方法的參數什麼情況下需

java中append方法的作用是追加字元串。
builder對象可以代表任何字元串
字元串都需要加引號。

Ⅷ Java中的append()方是任何類都有的嗎

你好!
不是每個類都有。
常用的類中,只有StringBuffer才有。
你可以下載JDK的API幫助,查看一下就知道了。
Object是所有類的父類,只有是Object的公共方法,所有類才有。append()方法並不是Object的方法。
如果對你有幫助,望採納。

Ⅸ Java中StringBuffer類append方法的使用

參數將被轉換成字元串,就好象使用了 String.valueOf 方法一樣。然後,將所得字元串中的字元追加到此序列。 參數:obj - 一個 Object。 返回:此對象的一個引用。 另請參見:String.valueOf(java.lang.Object), append(java.lang.String)appendpublic StringBuffer append(String str) 將指定的字元串追加到此字元序列。 按順序追加 String 變數中的字元,使此序列增加該變數的長度。如果 str 為 null,則追加 4 個字元 "null"。 假設此字元序列的長度在執行 append 方法前為 n。如果 k 小於 n,則新字元序列中索引 k 處的字元等於原序列中索引 k 處的字元;否則它等於參數 str 中索引 k-n 處的字元。 參數:str - 一個 string。 返回:此對象的一個引用。appendpublic StringBuffer append(StringBuffer sb) 將指定的 StringBuffer 追加到此序列中。 按順序將 StringBuffer 參數中的字元追加到此 StringBuffer 中,並使 StringBuffer 在長度上增加該參數的長度。如果 sb 為 null,則將 4 個 "null" 字元追加到此 StringBuffer 中。 在執行 append 方法前,讓 StringBuffer 中包含的原有字元序列的長度為 n。如果 k 小於 n,則新字元序列中索引 k 處的字元等於原有字元序列中索引 k 處的字元;否則它等於參數 sb 中索引 k-n 處的字元。 該方法在 this(目標)對象上實現同步,但不在源(sb)上實現同步。 參數:sb - 要追加的 StringBuffer。 返回:該對象的一個引用。 從以下版本開始:1.4 appendpublic StringBuffer append(CharSequence s) 將指定的 CharSequence 追加到該序列。 按順序將 CharSequence 參數中的字元追加到該序列中,使該序列增加該參數的長度。 該方法的結果與調用 this.append(s, 0, s.length()) 的結果完全相同; 該方法在 this(目標)對象上實現同步,但不在源(s)上實現同步。 如果s 為 null,則追加 4 個 "null" 字元。 指定者:介面Appendable 中的 append參數:s - 要追加的 CharSequence。 返回:此對象的一個引用。 從以下版本開始:1.5 appendpublic StringBuffer append(CharSequence s, int start, int end) 將指定 CharSequence 的子序列追加到此序列。 按順序追加參數 s 中的字元,即從索引 start 開始到索引 end 結束的此序列的內容。此序列增加的長度為 end - start。 假設此字元序列的長度在執行 append 方法前為 n。如果 k 小於 n,則新字元序列中索引 k 處的字元等於原序列中索引 k 處的字元;否則它等於參數 s 中索引 k+start-n 處的字元。 如果s 為 null,則認為 s 參數包含 4 個字元 "null",並以此為根據追加字元。 指定者:介面Appendable 中的 append參數:s - 要追加的序列。 start - 要追加的子序列的起始索引。 end - 要追加的子序列的結束索引。 返回:此對象的一個引用。 拋出:IndexOutOfBoundsException 如果 start 或 end 為負;或者 start 大於 end;或者 end 大於 s.length() 從以下版本開始:1.5 appendpublic StringBuffer append(char[] str) 將char 數組參數的字元串表示形式追加到此序列。 按順序將數組參數中的字元追加到此序列的內容中。此字元將增加該參數的長度。 該方法的總體效果與以下操作過程的效果相同:先使用 String.valueOf(char[]) 方法將參數轉換為字元串,然後將所得字元串的字元追加到此字元序列。 參數:str - 要追加的字元。 返回:此對象的一個引用。appendpublic StringBuffer append(char[] str, int offset, int len) 將char 數組參數的子數組的字元串表示形式追加到此序列。 將char 數組 str 中的字元按順序追加到此序列的內容中,從索引 offset 開始。此字元的長度將增加 len。 該方法的最終效果與以下操作過程的效果相同:先使用 String.valueOf(char[]) 方法將參數轉換為字元串,然後將所得字元串的字元追加到此字元序列。 參數:str - 要追加的字元。 offset - 要追加的第一個 char 的索引。 len - 要追加的 char 的數量。 返回:此對象的一個引用。appendpublic StringBuffer append(boolean b) 將boolean 參數的字元串表示形式追加到序列。 參數將被轉換成字元串,就好象使用了 String.valueOf 方法一樣。然後,將所得字元串中的字元追加到此序列。 參數:b - 一個 boolean 值。 返回:此對象的一個引用。 另請參見:String.valueOf(boolean), append(java.lang.String)appendpublic StringBuffer append(char c) 將char 參數的字元串表示形式追加到此序列。 參數將被追加到此序列。此序列的長度將增加 1。 該方法的最終效果與以下操作過程的效果相同:先使用 String.valueOf(char[]) 方法將參數轉換為字元串,然後將所得字元串的字元追加到此字元序列。 指定者:介面Appendable 中的 append參數:c - 一個 char 值。 返回:此對象的一個引用。appendpublic StringBuffer append(int i) 將int 參數的字元串表示形式追加到此序列。 參數將被轉換成字元串,就好象使用了 String.valueOf 方法一樣。然後,將所得字元串中的字元追加到此序列。 參數:i - 一個 int 值。 返回:此對象的一個引用。 另請參見:String.valueOf(int), append(java.lang.String)

閱讀全文

與java的append方法相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:144
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163