如何将Unicode无穷符号转换为字符串?

9
我希望在Java中使用无限符号(8侧卧),并将其用作字符串组件。
我没有找到适用于此的工作字符代码/ ASCII代码(是否有任何代码可用?)。
我尝试过:
String s=Character.toString(236);
String s=Character.toString('236');

我错过了什么吗?

现在我明白了:

System.out.println(Character.toString('\u221E'));

但输出结果是

我正在使用Java 1.7 JDK和Eclipse。为什么无限符号没有显示出来?

2个回答

22
您需要使用Unicode无限符号,U+221E。236是Windows的键盘输入约定,对您没有任何帮助。'\u221e'是字符常量。
现在,我不能保证这将在您的屏幕上显示任何∞字符。这取决于您使用的计算机类型、字体以及在-Dfile.encoding中设置了什么。另请参见此问题

1
使用此代码,我收到了。无穷大符号默认情况下不能显示?如果是这种情况,那么这个问题就过时了,因为我的老师将在自己的电脑上编译代码,结果会得到相同的默认输出(如果是默认的话)。 - Wandang

1
我知道这是很晚的回复,但以下信息一定会帮助到某些人。
在Eclipse中,默认情况下控制台的文本文件编码为Cp1252,然后请参考以下链接支持UTF-8编码: Eclipse中如何支持UTF-8编码 我建议像下面的源代码一样处理字符串中的无限符号:infinity
String infinitySymbol = null;

try {

    infinitySymbol = new String(String.valueOf(Character.toString('\u221E')).getBytes("UTF-8"), "UTF-8");

} catch (UnsupportedEncodingException ex) {

    infinitySymbol = "?";
    //ex.printStackTrace(); //print the unsupported encoding exception.

} finally {

    System.out.print("Symbol of infinity is : " + infinitySymbol);

}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接