【问题标题】:ASCII conversionASCII 转换
【发布时间】:2016-09-14 20:05:40
【问题描述】:

我想将 ASCII 值转换为对应的字符,所以我写了这个简单的代码:

public class Test {


    public static void main(String[] args) {
        int i=0;
        char ch='c';    
        for(i=0;i<127;i++)
        {
            ch=(char)i;
            System.out.print(ch+"\t");
        }
        System.out.println("finish");
    }
}

但是作为输出,它什么也没有显示,而且尽管过程已经完成,但控件甚至没有退出循环。请解释这种行为和正确的代码。

【问题讨论】:

  • 语言是什么?
  • 尝试打印字符 32 以下的任何内容没有多大意义,因为它们是控制字符。
  • abc 字符 ASCII 是从 32 到 122 而不是从 0 到 127

标签: character ascii


【解决方案1】:

正如其他人所指出的,您已经包含了控制字符;如果你改变循环(如下),你会得到完整的集合,不包括这些控制字符:

public static void main() {
    for(int i = 33; i < 127; i++)
    {
        char ch = (char) i;
        System.out.print(i + ":" + ch + "\t");
    }
    System.out.println("finish");
}

【讨论】:

    猜你喜欢
    • 2017-07-02
    • 1970-01-01
    • 1970-01-01
    • 2010-12-30
    • 2011-05-20
    • 2013-11-20
    • 2014-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多