2014-09-26 2 views
0

Привет Я хочу, противоположную функцию getNumericValueКак получить символ из числа в Java

int i = Character.getNumericValue('A'); 
if('A' == Character.someFunction(i)){ 
     System.out.println("hooray"); 
} 

Я пытался «Character.forDigit», но это, кажется, совершенно неправильно.

Я новичок в java, поэтому, пожалуйста, помогите.

ответ

2

Противоположного Character.forDigit

if(Character.forDigit(Character.getNumericValue('b'), Character.MAX_RADIX) == 'b') { 
    // true! 
} 
if(Character.forDigit(Character.getNumericValue('B'), Character.MAX_RADIX) == 'b') { 
    // true! 
} 


if(Character.getNumericValue('B') == Character.getNumericValue('b')) { 
    // true! 
} 
if((int)('B') == (int)'b') { 
    // false 
} 

Хотя учитывая ваш вопрос, я думаю, что ваше ищем фактический код ASCII полукокса для письма.

Прочитайте этот Java Character literals value with getNumericValue() пост, чтобы увидеть более подробную информацию о Character.getNumericValue

1

Для преобразования между char и int вы можете использовать приведение типов. Например:

char myChar = (char) 65; 
System.out.println(myChar); 

приведет к A. Надеюсь, это поможет!

0

Character.getNumericValue ('A') преобразует 'A' в unicode-представление символа. Возможно, вы не хотите это использовать.

Буквы AZ в верхнем регистре ('\ u0041' через '\ u005A'), строчной ('\ u0061' через '\ u007a'), и полный вариант ширины ('\ uFF21' через ' \ uFF3A 'и' \ uFF41 'через' \ uFF5A ') формы имеют числовые значения от 10 до 35. Это не зависит от спецификации Unicode , которая не присваивает числовым значения этим значениям char .

Смежные вопросы