字符的“+”操作
- 当左右两边都是数值型时,则做加法运算。
- 当左右两边有一方为字符串时,则做拼接运算。
- 运算顺序均为从左到右。
```java
public class test1 {
public static void main(String[] args) {
} }int i = 10;
char a = 'A'; //'A'的值是65
char b = 'a'; //'a'的值是97
System.out.println(i + a);
System.out.println(i + b);
![image.png](https://cdn.nlark.com/yuque/0/2021/png/21705001/1632116263054-5acbe069-acec-4683-a550-c359f40feebd.png#clientId=u4e1fc4da-a9c0-4&from=paste&height=194&id=u63a3569b&margin=%5Bobject%20Object%5D&name=image.png&originHeight=178&originWidth=679&originalType=binary&ratio=1&size=47684&status=done&style=none&taskId=uae8aa364-0246-4298-a6ea-4100e591b2d&width=741.5)<br />**错误写法:**
```java
public class test1 {
public static void main(String[] args) {
int i = 10;
char a = 'A'; //'A'的值是65
char b = 'a'; //'a'的值是97
char c = i + a;
}
}
错误原因:
自动类型转换由低到高进行,int类型无法自动转换为char类型。
字符串的“+”操作
/**
* @author WTY
*/
public class test1 {
public static void main(String[] args) {
System.out.println("WTY" + "2002");
System.out.println("WTY" + 2002);
System.out.println(2002 + "WTY");
System.out.println("WTY" + 2002 + 666);
System.out.println(0 + 2002 + "WTY");
}
}
实为字符串的拼接操作。
当连续进行“+”操作时,从左到右依次进行。