为什么输出结果为ASCII码

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
public static void main(String[] args) {
        char[] chars = new char[26];
        for (int i = 0;i < chars.length;i++){
            chars[i] = (char)('A'+i);
            System.out.print(chars[i]+' ');
        }
    }
运行结果及报错内容

979899100101102103104105106107108109110111112113114115116117118119120121122

我的解答思路和尝试过的方法

我知道是因为应该用双引号加空格来隔开但是为什么单引号加空格会变这样

我想要达到的结果

解析:输出的时候你之前写的 +' ' 单引号是字符,不是字符串,所以相当于你又做了字符的加减,自然又被转为ASCII码了

img

char[i]和单引号都是char类型,char类型相加会转为int相加。所以是数字
有帮助点个采纳

这里的加号不是连接符是计算符