Преобразование символов в целые числа в Java

Может кто-нибудь, пожалуйста, объясните мне, что здесь происходит:

char c = '+';
int i = (int)c;
System.out.println("i: " + i + " ch: " + Character.getNumericValue(c));

Это печатаетi: 43 ch:-1, Означает ли это, что я должен полагаться на примитивные преобразования для преобразованияchar вint? Так как я могу преобразоватьCharacter к?Integer

Редактировать: Да, я знаюCharacter.getNumericValue возвращается-1 если это не числовое значение, и это имеет смысл для меня. Вопрос в том, почему возвращаются примитивные преобразования.43

Edit2: 43 является ASCII для+, но я ожидаю, что актерский состав не получится так же, какgetNumericValue не удалось. В противном случае это означает, что есть два семантических эквивалентных способа выполнить одну и ту же операцию, но с разными результатами?

Ответы на вопрос(6)

Ваш ответ на вопрос