java中'\t'與"\t"的+運算


1 public class Test{
2     
3      public static void main(){
4             System.out.println(10+"\t"+"!");
5             System.out.println(10+'\t'+"!");
6 }
7 }

 

這時你是不是認為兩個輸出是一樣的,都是10加上以個制表符再加上一個感嘆號,但實際上的輸出:

這時你就很懵逼呀,為什么第二個輸出這么奇怪呢?

很簡單,這其實是一個基本數據類型隱式轉換的結果

  • 首先,Java基本數據類型有八大類:byte,(short,char),int,long,float,double,boolean;從小范圍到大范圍排序,boolean例外
  • 可見當int類型的10加上char類型'\t'時,char類型的'\t'就會隱式的從char型轉到int型
  • 而int類型的'\t'在十進制中代表數字9
  • 所以用算術運算符+后,便得19

 字符表

轉義字符
意義
ASCII碼值(十進制)
\a
響鈴(BEL)
007
\b
退格(BS) ,將當前位置移到前一列
008
\f
換頁(FF),將當前位置移到下頁開頭
012
\n
換行(LF) ,將當前位置移到下一行開頭
010
\r
回車(CR) ,將當前位置移到本行開頭
013
\t
水平制表(HT) (跳到下一個TAB位置)
009
\v
垂直制表(VT)
011
\\
代表一個反斜線字符''\'
092
\'
代表一個單引號(撇號)字符
039
\"
代表一個雙引號字符
034
\? 代表一個問號 063
\0
空字符(NULL)
000
\ooo
1到3位八進制數所代表的任意字符
三位八進制
\xhh
1到2位十六進制所代表的任意字符
二位十六進制


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM