1. 程式人生 > >Java輸出字元型變數時與""雙引號拼接問題

Java輸出字元型變數時與""雙引號拼接問題

public class Demo {
          public static void main(String[] args) {
                   /**
                    * 字元型變數初始值是字元
                    * 
                    * 結論:
                    * 
                    * 當輸出語句中沒有拼接“”時,字元型變數被賦值什麼就輸出什麼;
                    * 當“”前有2個及2個以上的字元型變數時,轉化為int型別進行計算後輸出;
                    * 當“”前有1個或者0個字元型變數時,整個輸出語句都轉化成字串型別後輸出;
                    */
char ch1 = 'A'; char ch2 = 'B'; // 初始值是什麼就輸出什麼 System.out.println(ch1); // A // 先轉化為int型別,進行計算 System.out.println(ch1+ ch2); // 131 // 先轉化為int型別,進行計算
System.out.println(ch1+ ch2 + ""); // 131 // ""雙引號前先轉化為int型別,進行計算,""雙引號後轉化為字串型別 System.out.println(ch1+ ch2 + "" + 'C'); // 131C // ""雙引號前後都轉化為字串 System.out.println(ch1 + "" + ch2 + 'C'); // ABC
// ""雙引號前後都轉化為字串 System.out.println(ch1 + "" + ch2); // AB // ""雙引號後都轉化為字串 System.out.println("" + ch1+ ch2); // AB /** * 字元型變數初始值是字元 * * 結論: * * 當輸出語句中沒有拼接“”時,字元型變數被賦值什麼就輸出什麼; * 當“”前有2個及2個以上的字元型變數時,轉化為int型別進行計算後輸出; * 當“”前有1個或者0個字元型變數時,整個輸出語句都轉化成字串型別後輸出; */ ch1 = 65; ch2 = 66; char ch3 = 67; // 初始值什麼就輸出什麼 System.out.println(ch1); // 65 // ""雙引號前先轉化為int型別,進行計算後輸出 System.out.println(ch1 + ch2 + ""); // 131 // ""雙引號前轉化為字元型別輸出 System.out.println( ch1 + ""); // A // ""雙引號前先轉化為int型別,進行計算,""雙引號後轉化為字串型別 System.out.println(ch1 + ch2 + "" + ch3); // 131C // ""雙引號前後都轉化為字串 System.out.println(ch3 + "" + ch1 + ch2); // CAB /** * 拼接物件是字串時,結果和字元型變數初始值是字元相同的結果 * * 結論: * * 當輸出語句中沒有拼接“”時,字元型變數被賦值什麼就輸出什麼; * 當“”前有2個及2個以上的字元型變數時,轉化為int型別進行計算後輸出; * 當“”前有1個或者0個字元型變數時,整個輸出語句都轉化成字串型別後輸出; */ int a = 1, b = 2 ; String c = "3"; System.out.println(a + b + c ); // 33 System.out.println(c + a + b); // 312 } }