1.3 字符串拼接(连接)
對于已經(jīng)定義的字符串,可以對其進行各種操作。連接多個字符串是字符串操作中最簡單的一種。通過字符串連接,可以將兩個或多個字符串、字符、整數(shù)和浮點數(shù)等類型的數(shù)據(jù)連成一個更大的字符串。
String 字符串雖然是不可變字符串,但也可以進行拼接只是會產(chǎn)生一個新的對象。String 字符串拼接可以使用“+”運算符或 String 的 concat(String str) 方法。
“+”運算符優(yōu)勢是可以連接任何類型數(shù)據(jù)拼接成為字符串,而 concat 方法只能拼接 String 類型字符串。
使用連接運算符“+”
與絕大多數(shù)的程序設計語言一樣,Java 語言允許使用“+”號連接(拼接)兩個字符串。“+”運算符是最簡單、最快捷,也是使用最多的字符串連接方式。在使用“+”運算符連接字符串和 int 型(或 double 型)數(shù)據(jù)時,“+”將 int(或 double)型數(shù)據(jù)自動轉(zhuǎn)換成 String 類型。
例 1
下面的實例使用“+”運算符連接了 3 個數(shù)組和 1 個字符串。
上述代碼首先創(chuàng)建了 3 個包含有 5 個元素的數(shù)組,然后循環(huán)遍歷數(shù)組,遍歷的次數(shù)為 5。在循環(huán)體內(nèi)輸出學號、姓名和課程,并使用“+”運算符連接班級最終形成一個字符串。程序運行后輸出結(jié)果如下:
本次考試學生信息如下: 學號:501|姓名:張城|課程:數(shù)學|班級:初二(三)班 學號:101|姓名:劉麗麗|課程:語文丨班級:初二(三)班 學號:204|姓名:李國旺|課程:數(shù)學|班級:初二(三)班 學號:102|姓名:孟紅霞|課程:英語|班級:初二(三)班 學號:334|姓名:賀寧|課程:英語|班級;初二(三)班當定義的字符串值的長度過長時,可以分作多行來寫,這樣比較容易閱讀。例如:
String str="Welcome to"+"Beijing"+"歡迎來到"+"北京。"+"北京我的故鄉(xiāng)。";使用 concat() 方法
在 Java 中,String 類的 concat() 方法實現(xiàn)了將一個字符串連接到另一個字符串的后面。
concat() 方法語法格式如下:
字符串 1.concat(字符串 2);執(zhí)行結(jié)果是字符串 2 被連接到字符串 1 后面,形成新的字符串。
例 2
如 concat() 方法的語法所示,concat() 方法一次只能連接兩個字符串,如果需要連接多個字符串,需要調(diào)用多次 concat() 方法。
下面創(chuàng)建一個實例代碼來演示如何使用 concat() 方法連接多個字符串。
public static void main(String[] args) {String info = "三國演義、";info = info.concat("西游記、");info = info.concat("水滸傳、");info = info.concat("紅樓夢");System.out.println(info);String cn = "中國";System.out.println(cn.concat("北京").concat("海淀區(qū)").concat("人民公園")); }執(zhí)行該段代碼,輸出的結(jié)果如下所示。
三國演義、西游記、水滸傳、紅樓夢 中國北京海淀區(qū)人民公園連接其他類型數(shù)據(jù)
前面介紹的例子都是字符串與字符串進行連接,其實字符串也可同其他基本數(shù)據(jù)類型進行連接。如果將字符串同這些數(shù)據(jù)類型數(shù)據(jù)進行連接,此時會將這些數(shù)據(jù)直接轉(zhuǎn)換成字符串。
例 3
編寫一個 Java 程序,實現(xiàn)將字符串與整型、浮點型變量相連并輸出結(jié)果。實現(xiàn)代碼如下:
上述代碼實現(xiàn)的是將字符串變量 book 與整型變量 price 和浮點型變量 readtime 相連后將結(jié)果輸出。在這里定義的 price 和 readtime 都不是字符串,當它們與字符串相連時會自動調(diào)用自身的 toString() 方法將其轉(zhuǎn)換成字符串形式,然后再參與連接運算。因此,程序運行后的結(jié)果如下所示:
我買了一本圖書,名字是:三國演義 價格是:59 我每天閱讀2.5小時假設將本例中的輸出語句修改為如下形式:
System.out.println("我買了一本圖書,名字是:"+book+"\n 價格是:"+price+"\n我每天閱讀"+(price+readtime)+"小時");因為運算符具有優(yōu)先級,而圓括號的優(yōu)先級最高,所以先計算 price 與 readtime 的和,再將結(jié)果轉(zhuǎn)換成字符串進行連接。此時的運行結(jié)果如下所示:
我買了一本圖書,名字是:三國演義 價格是:59 我每天閱讀61.5小時注意:只要“+”運算符的一個操作數(shù)是字符串,編譯器就會將另一個操作數(shù)轉(zhuǎn)換成字符串形式,所以應該謹慎地將其他數(shù)據(jù)類型與字符串相連,以免出現(xiàn)意想不到的結(jié)果。
總結(jié)
以上是生活随笔為你收集整理的1.3 字符串拼接(连接)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.2 String字符串和整型int的
- 下一篇: 1.4 获取字符串长度(length()