真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java14中Text塊怎么用

這篇文章主要介紹了Java14中Text塊怎么用,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

貴南網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)建站于2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。

在Java中,文本塊多行字符串文字。這意味著我們不需要陷入顯式的行終止符,字符串連接以及分隔符的混亂局面,而這些分隔符通常用于編寫普通的字符串文字。

Java 文本塊在Java 13中可用( JEP 355 )和Java 14( JEP 368 )作為預(yù)覽函數(shù)。它計(jì)劃成為Java 15的標(biāo)準(zhǔn)函數(shù)( JEP 378 ) 。

要啟用此預(yù)覽函數(shù),我們必須使用 -enable-preview  -source 14 (兩個(gè)連字符)標(biāo)志。

文本塊語法

  • 文本塊包含多行文本,并使用三個(gè)雙引號(hào)字符(""")作為其開始和結(jié)束定界符。

  • 開頭的三個(gè)雙引號(hào)字符后總是一個(gè)行終止符。

  • 我們不能在一行上包含定界符和文本塊。分隔符必須在自己的行上。內(nèi)容只能從下一行開始。

  • 如果文本內(nèi)容包含單引號(hào)或雙引號(hào),則無需將其轉(zhuǎn)義。

String dbSchema = 	"""
			CREATE TABLE 'TEST'.'EMPLOYEE'
			(
			  'ID' INT NOT NULL DEFAULT 0 ,
			  'FIRST_NAME' VARCHAR(100) NOT NULL ,
			  'LAST_NAME' VARCHAR(100) NULL ,
			  'STAT_CD' TINYINT NOT NULL DEFAULT 0 
			);
					""";

盡管上面的文本塊看起來非常簡(jiǎn)單,但仍然有很多事情發(fā)生在幕后。讓我們來探索。

類似字符串

  • 從文本塊生成的實(shí)例的類型為 java.lang.String ,其特征與傳統(tǒng)的雙引號(hào)字符串相同。這包括對(duì)象表示和插入字符串池。

  • 我們可以使用文本塊作為 String 類型的方法參數(shù)傳遞。

  • 文本塊可以在可以使用字符串文字的任何地方使用。例如,我們可以將其用于字符串連接。

String string = "Hello";
String textBlock = """
					World""";

String joinedString =  string + textBlock;

System.out.println(joinedString);

程序輸出。

Hello
World

文本塊縮進(jìn)

文本塊保留其內(nèi)容的縮進(jìn),讓我們參考第一個(gè)示例。

String dbSchema = 	"""
			CREATE TABLE 'TEST'.'EMPLOYEE'
			(
			  'ID' INT NOT NULL DEFAULT 0 ,
			  'FIRST_NAME' VARCHAR(100) NOT NULL ,
			  'LAST_NAME' VARCHAR(100) NULL ,
			  'STAT_CD' TINYINT NOT NULL DEFAULT 0 
			);
					""";

System.out.println(dbSchema);

程序輸出:

|CREATE TABLE 'TEST'.'EMPLOYEE'
|(
|  'ID' INT NOT NULL DEFAULT 0 ,
|  'FIRST_NAME' VARCHAR(100) NOT NULL ,
|  'LAST_NAME' VARCHAR(100) NULL ,
|  'STAT_CD' TINYINT NOT NULL DEFAULT 0
|);

在這里,我們有兩種縮進(jìn)類型:

第一個(gè)縮進(jìn)是從行首到所有行中的" CREATE" 字??赡軙?huì)根據(jù)各種因素(例如格式化插件或開發(fā)者的選擇)而增加或減少。

第二次縮進(jìn)是從字符'(''到'ID'的開始。在大多數(shù)情況下,縮進(jìn)時(shí)間為4或8個(gè)空格。

添加一些縮進(jìn)

假設(shè)我們想在上面的示例中為所有行在左側(cè)添加2個(gè)制表符縮進(jìn)。為此,我們可以仔細(xì)定位右三引號(hào),以將兩個(gè)制表符精確地向左移動(dòng)。推桿位于應(yīng)從其基本縮進(jìn)處開始的完全相同的位置。

String dbSchema = 	"""
			CREATE TABLE 'TEST'.'EMPLOYEE'
			(
			  	'ID' INT NOT NULL DEFAULT 0 ,
			  	'FIRST_NAME' VARCHAR(100) NOT NULL ,
			  	'LAST_NAME' VARCHAR(100) NULL ,
			  	'STAT_CD' TINYINT NOT NULL DEFAULT 0 
			);
	""";

System.out.println(dbSchema);

程序輸出:

|		CREATE TABLE 'TEST'.'EMPLOYEE'
|		(
|  			'ID' INT NOT NULL DEFAULT 0 ,
|  			'FIRST_NAME' VARCHAR(100) NOT NULL ,
|  			'LAST_NAME' VARCHAR(100) NULL ,
|  			'STAT_CD' TINYINT NOT NULL DEFAULT 0
|		);

另外,請(qǐng)注意,Java編譯器還會(huì)刪除文本塊中每一行上的尾隨空格。

行終止符

不同的平臺(tái)具有不同的行終止符。 Java不參與平臺(tái)檢測(cè),而是將文本塊中的所有行終止符標(biāo)準(zhǔn)化為\n 

如果需要平臺(tái)行終止符,則可以使用 String::replaceAll("\n",System.lineSeparator())。

String string = "Hello";
String textBlock = """
					World""";

String joinedString =  string + textBlock;

joinedString = joinedString.replaceAll("\n", System.lineSeparator());

System.out.println(joinedString);

轉(zhuǎn)義序列

很多時(shí)候,我們只想將內(nèi)容寫到程序的多行中,但實(shí)際上它們只是一個(gè)字符串內(nèi)容。在這種情況下,我們可以使用換行符換碼符,即單個(gè)反斜杠'\'。它禁止包含隱式換行符。

String dbSchema = """
	CREATE TABLE 'TEST'.'EMPLOYEE'\
	(\
	'ID' INT NOT NULL DEFAULT 0 ,\
	'FIRST_NAME' VARCHAR(100) NOT NULL ,
	'LAST_NAME' VARCHAR(100) NULL ,\
	'STAT_CD' TINYINT NOT NULL DEFAULT 0 \
	);
	""";

System.out.println(dbSchema);

程序輸出:

|CREATE TABLE 'TEST'.'EMPLOYEE'('ID' INT NOT NULL DEFAULT 0 ,'FIRST_NAME' VARCHAR(100) NOT NULL ,
'LAST_NAME' VARCHAR(100) NULL ,'STAT_CD' TINYINT NOT NULL DEFAULT 0 );

如果由于某種原因我們不希望刪除縮進(jìn),可以使用'\s'(ASCII字符32,空格)轉(zhuǎn)義序列。在任何行的末尾使用它可以保證該行將具有所有空格字符,直到遇到'\s'。

String dbSchema = 	"""
	CREATE TABLE 'TEST'.'EMPLOYEE'          \s
	(                                       \s
	  'ID' INT NOT NULL DEFAULT 0 ,         \s
	   'FIRST_NAME' VARCHAR(100) NOT NULL , \s
	  'LAST_NAME' VARCHAR(100) NULL ,       \s
	  'STAT_CD' TINYINT NOT NULL DEFAULT 0  \s
	);                                      \s
	""";

System.out.println(dbSchema.replaceAll("\s", "."));

程序輸出。 在此程序輸出中,我將所有空格字符替換為點(diǎn)'.' 讓您了解其效果。

CREATE.TABLE.'TEST'.'EMPLOYEE'...........
(........................................
..'ID'.INT.NOT.NULL.DEFAULT.0.,..........
...'FIRST_NAME'.VARCHAR(100).NOT.NULL.,..
..'LAST_NAME'.VARCHAR(100).NULL.,........
..'STAT_CD'.TINYINT.NOT.NULL.DEFAULT.0...
);.......................................

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Java14中Text塊怎么用”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!


網(wǎng)頁名稱:Java14中Text塊怎么用
當(dāng)前URL:http://weahome.cn/article/gideje.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部