java中\(zhòng)t,\n,\r,\b,\f 的作用及說(shuō)明
\t,\n,\r,\b,\f 的作用
直接輸出看一下就知道了
System.out.println("11111\t2225222");System.out.println("55555\n665666");System.out.println("88877\r5454421\n");System.out.println("777458\b6594954");System.out.println("777788\f6594954");
輸出結(jié)果:
結(jié)論
\t
相當(dāng)于tab鍵\b
退格(Backspace)\f
控制臺(tái)輸出相當(dāng)于如圖\n
換行\r
回車
回車 \r 本義是光標(biāo)重新回到本行開頭。r 的英文return,控制字符可以寫成CR,即Carriage Return
換行 \n 本義是光標(biāo)往下一行(不一定到下一行行首)。n 的英文newline,控制字符可以寫成LF,即Line Feed
\n\r\t\f 的區(qū)別
總的概括一下\n \r \t \f的功能
字符 | 作用 |
---|---|
\n | 換行 |
\r | 回車 |
\t | 制表 (相當(dāng)于tab) |
\f | 換頁(yè) |
單獨(dú)解釋一下每一個(gè)的特點(diǎn)。
\n 換行符,使光標(biāo)定位到下一行。
public class Test { public static void main(String[] args) { System.out.print("aaaaaaaaaaaaa\nbbbb"); } }
結(jié)果:
\r 回車符,使光標(biāo)回到當(dāng)前行的行首。如果之前該行有內(nèi)容,則會(huì)被覆蓋;
public class Test { public static void main(String[] args) { System.out.println("hello world\r12345"); } }
編譯器輸出結(jié)果:
在這里,看起來(lái)就像是之前輸出的hello world被清空后,又輸出1234一樣。和它本來(lái)的意思不一樣啊。不是本應(yīng)該輸出“1234 world”嗎?
然而在控制臺(tái)中它的輸出結(jié)果就是我們預(yù)期的結(jié)果:
至于什么原因,應(yīng)該和編譯器有關(guān)吧。
\t 是制表符。相當(dāng)于tab縮進(jìn)。
它會(huì)使得你輸出的內(nèi)容為4的倍數(shù),如果輸出字符串"a\t",那么,會(huì)在輸出a之后再輸出3個(gè)空格,如果輸出字符串a(chǎn)aaa\t,則會(huì)在輸出4個(gè)a后,再輸出四個(gè)空格。那么如果輸出aaaaa\t呢?,它會(huì)在后面輸出3個(gè)空格,以使得輸出的字符個(gè)數(shù)恰好為4的倍數(shù)。
下面是測(cè)試代碼;
public class Test { public static void main(String[] args) { System.out.println("a\t*"); System.out.println("123412341234"); System.out.println("aaa\t*"); System.out.println("123412341234"); System.out.println("aaaa\t*"); System.out.println("123412341234"); System.out.println("aaaaa\t*"); System.out.println("123412341234"); } }
結(jié)果:
\f 是換頁(yè)符,在控制臺(tái)上輸出沒(méi)有意義。
這里演示一下:
public class Test { public static void main(String[] args) { System.out.println("aaaa\fbbbb"); } }
結(jié)果:
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SSM框架中entity mapper dao service controll
這篇文章主要介紹了SSM框架中entity mapper dao service controller層的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11SpringBoot如何注冊(cè)Servlet、Filter、Listener的幾種方式
在Servlet 3.0之前都是使用web.xml文件進(jìn)行配置,這篇文章主要介紹了SpringBoot如何注冊(cè)Servlet、Filter、Listener的幾種方式,在Servlet 3.0之前都是使用web.xml文件進(jìn)行配置,2018-10-10SpringMVC獲取請(qǐng)求參數(shù)和域?qū)ο蠊蚕頂?shù)據(jù)的示例代碼
這篇文章主要給大家介紹了SpringMVC獲取請(qǐng)求參數(shù)和域?qū)ο蠊蚕頂?shù)據(jù)的示例代碼,文中通過(guò)代碼示例給大家介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-12-12Spring cloud config集成過(guò)程詳解
這篇文章主要介紹了spring cloud config集成過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12mybatis-plus常用注解@TableId和@TableField的用法
本文主要介紹了mybatis-plus常用注解@TableId和@TableField的用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04MyBatis中#號(hào)與美元符號(hào)的區(qū)別
#{變量名}可以進(jìn)行預(yù)編譯、類型匹配等操作,#{變量名}會(huì)轉(zhuǎn)化為jdbc的類型。很多朋友不清楚在mybatis中#號(hào)與美元符號(hào)的不同,接下來(lái)通過(guò)本文給大家介紹兩者的區(qū)別,感興趣的朋友參考下吧2017-01-01詳解Java Web項(xiàng)目啟動(dòng)執(zhí)行順序
這篇文章主要介紹了詳解Java Web項(xiàng)目啟動(dòng)執(zhí)行順序,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-06-06