中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java中轉義字符時會出現哪些問題

發布時間:2020-11-10 15:30:53 來源:億速云 閱讀:231 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關java中轉義字符時會出現哪些問題,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

在java中,你可以定義

char c = '\u4f60';
char m = '\u0045';
char e = '\u554a';

這樣的字面量,例如:

System.out.println("\u535a\u5ba2\u56ed");

這樣的代碼不管在什么編碼環境下都不會出現中文亂碼的問題

但是你不能定義這樣的字面量:

char c = '\u000a';
char m = '\u0027';

這是因為\u000a和\u0027是特殊轉義字符,Java對在字符串字面常量中的Unicode轉義字符沒有提供任何特殊處理。程序會直接按照原字符轉換為它們所表示的字符[JLS 3.2]。

\u000a是一個LineFeed,即換行,這樣程序會編譯成

char c = '
';

自然是編譯錯誤了

另一個例子是:

System.out.println("a\u0022.length()+\u0022b".length());   

對該程序的一種很膚淺的分析會認為它應該打印出26,稍微深入一點的分析會認為該程序應該打印16,如果你實際運行一遍,發現結果既不是26也不是16,而是2.

因為,\u0022是雙引號的轉義字,程序最終會編譯為

String str = "a".length()+"b";
System.out.println(str.length()); 

基于此案例,我寫了一個例子,大家可以運行嘗試一下結果

String str = "\u0061\u0022\u002b\u0028\u006e\u0065\u0077\u0020\u006a\u0061\u0076\u0061\u002e\u0075\u0074\u0069\u006c\u002e\u0063\u006f\u006e\u0063\u0075\u0072\u0072\u0065\u006e\u0074\u002e\u0043\u0061\u006c\u006c\u0061\u0062\u006c\u0065<\u0056\u006f\u0069\u0064>\u0028\u0029\u007b\u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0056\u006f\u0069\u0064\u0020\u0063\u0061\u006c\u006c\u0028\u0029\u007b\u0074\u0068\u0072\u006f\u0077\u0020\u006e\u0065\u0077\u0020\u0052\u0075\u006e\u0074\u0069\u006d\u0065\u0045\u0078\u0063\u0065\u0070\u0074\u0069\u006f\u006e\u0028\u0022\u0073\u0075\u0070\u0072\u0069\u0073\u0065\u0020\u006d\u0061\u0074\u0068\u0065\u0072\u0020\u0066\u0075\u0063\u006b\u0065\u0072\u0021\u0022\u0029\u003b\u007d\u007d\u0029\u002e\u0063\u0061\u006c\u006c\u0028\u0029\u002b\u0022";
System.out.println(str);

關于java中轉義字符時會出現哪些問題就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

潮安县| 渭源县| 克拉玛依市| 博白县| 安龙县| 娱乐| 汉中市| 司法| 巫山县| 邵阳市| 松滋市| 瓦房店市| 高安市| 宁夏| 宁南县| 长沙县| 浙江省| 博乐市| 广丰县| 双流县| 沐川县| 孝义市| 盘山县| 东明县| 靖安县| 柘荣县| 德兴市| 项城市| 松阳县| 克山县| 镶黄旗| 左云县| 玉屏| 江津市| 巴中市| 濮阳市| 罗源县| 湖口县| 英超| 浠水县| 土默特左旗|