1. 程式人生 > >Java中String與“+”號

Java中String與“+”號

public class Test {
	public static void main(String[] args) {
		String test = "你好";
		Person p = new Person();
		p.age = 23;
		p.name = "jack";
		System.out.println(test + p);
		
		String str = "now";
		System.out.println(str + new ArrayList<String>());
	}
}

class Person {
	public int age;
	public String name;
	
	@Override
	public String toString() {
		return "Person's age=" + age + ", name=" + name;
	}
}

輸出:

你好Person's age=23, name=jack
now[]

先說說java對加號的處理機制:

在使用加號進行計算的表示式中,只要遇到String字串,則所有的資料都會轉化為String型別進行拼接,如果是原始資料,則直接拼接,如果是物件。

則呼叫toStirng方法的返回值然後拼接。

public class Test {
	public static void main(String[] args) {
		String test = 1 + 2 +"你好";
		System.out.println(test);
	}
}
輸出:
3你好
這裡注意java的執行順序是從左到右。所以結果為3你好。