char类型和int类型相加为什么会是int类型 Java

 

 1 import java.util.Arrays;
 2 public class ArrayExercise01doself01{
 3 
 4     public static void main(String[] args){
 5         //创建一个char类型的26个元素的数组,分别放置'A'-'Z'。
 6         //使用for循环访问所有元素并打印出来。提示:
 7         //char类型数据运算'A'+1->'B';
 8         char Arr[]=new char[26];
 9         for(int i=0;i<Arr.length;i++){
10 
11             //有什么方法可以让定义的数组不用从'A'到'Z'一个一个的手动输入,
12             
13 
14             // char j='i';
15             // Arr[i]='A'+j;
16 
17             // Arr[i]='A'+1;//为什么这一行代码我把(char)i改为了1,就不报错并且能顺利运行出结果。
18 
19 
20             // Arr[i]='A'+(char)i;//要怎样解决错误: 不兼容的类型: 从int转换到char可能会有损失;
21             // Arr[i]=(char)((char)'A'+(char)i);
22             Arr[i]=(char)'A'+(char)i;
23         }
24         System.out.println(Arrays.toString(Arr));
25     }
26 }

int类型的范围比char的要大,当这2个类型相加时,相加结果会自动转换成int类型。

posted on 2022-02-10 10:59  轻信  阅读(286)  评论(0)    收藏  举报

导航