9

I want to use the infinity symbol (8 lying sideways) in java.

furthermore i want to use it as a String component.
i did not find a working charcode/ascii code for this (is there any?).

i tried:

String s=Character.toString(236);
String s=Character.toString('236');

am i missing something?

i got this now:

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

but the output is ?

i am using java 1.7 jdk and eclipse. why is the infinity sign not showing up?

Wandang
  • 912
  • 2
  • 8
  • 37

2 Answers2

22

You need the Unicode infinity sign, U+221E. 236 is a Windows typing convention, that won't help you at all. '\u221e' is the character constant.

Now, I can't promise that this will result in any ∞ characters on your screen. That depends on what sort of computer you have, what font you are using, and what you set in -Dfile.encoding. Also see this question.

Community
  • 1
  • 1
bmargulies
  • 97,814
  • 39
  • 186
  • 310
  • 1
    using this i receive `?`. the infinity symbol cannot be shown by default? if this is the case the question is obsolete because my teacher will compile the code at his own pc resulting in the same default output (if it is default) – Wandang May 29 '12 at 21:33
1

I know this is very late reply but the below information will definitely help someone.

In Eclipse by default Text File encoding for console is Cp1252, then

How to support UTF-8 encoding in Eclipse

and I will encourage to handle the infinity symbol in String like below source:

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);

}
ArifMustafa
  • 4,617
  • 5
  • 40
  • 48