分析原因:编码问题,使用的编码是GBK的,所以不能显示的部分就变成了“?”。
小写的希腊字母对应的Unicode码为945~969,但是在962位置输出“?”,所以遍历至962时跳过此处。可用if语句。
并且查阅希腊字母表可知,ρ的后面就是σ。此处的“?”是多余的。
下面附上代码:
有两种方法打印希腊字母表(一种使用Unicode)
第一种:
class Xila{
public static void main(String[] args) {
for(int i=913;i<938;i++){
if (i==930) continue;
System.out.println("希腊大写字母有:"+(char)i+";i=="+i);
}
for(int i=945;i<970;i++){
if (i==962) continue;
System.out.println("希腊小写字母有:"+(char)i+";i=="+i);
}
}
}
第二种:
class Xila{
public static void main(String[] args) {
char a = 'α';
char b = 'ω';
int start = a;
int end = b;
System.out.println("希腊字母表");
for (int i = a; i <= b; i++) {
if(i==962){continue;}
System.out.print((char) i); //将println改为print就不会换行
System.out.print(' ');
}
}
}