2015-04-14 2 views
-1

Мне нужна помощь, отвечающая на мой вопрос, поэтому мне нужно присвоить значение int знаку. Я посмотрел и просмотрел апи. Я не могу придумать, что мне делать. Мне нужно назначить значение символа и int, указанное пользователем, он/она назначит любое целое число и символ, который они желают. Сначала я думал, что набираю текст, но я не могу заставить свой тип приведения работать правильно. есть идеи?Ошибка логики, присваивая значение разному

e.g. 
 

 
F = 56 
 
H = -25

+1

Пожалуйста, будьте более конкретным. Кроме того, 'char' не может быть отрицательным. –

+0

Ваш вопрос непонятен. –

ответ

1

Существует уже предопределенные значения, связанные с символами, и это связано с кодировкой. Например, значение для A равно 65, B 66, ... и вы не можете перепрограммировать его произвольно, за исключением использования техники программирования с очень низким уровнем. Теперь, если вы хотите связать значения int с символами, вы можете использовать карту.

, например

Map<Character, Integer> charValues = new HashMap<Character, Integer>(); 
charValues.put('H',-25); 
charValues.put('F', 56); 

А позже при обработке карты можно использовать, например,

int valueForH = charValues.get('H'); 

В Autoboxing и автоматической распаковки потенциал Java позволяет идти прозрачно из символов/Integer ссылочные типы к типам значений char/int

Вы можете использовать это в интерактивном режиме с помощью пользователь посредством основного метода или другого метода. Пример

public static void main(String[] args) { 

    Map<Character, Integer> charValues = new HashMap<Character, Integer>(); 

    Scanner sc = new Scanner(System.in); 
    while (true) { 
     System.out.println("Enter a character and the corresponding value..."); 
     String data = sc.next(); 
     if ("exit".equals(data)) { 
      break; 
     } 
     char car = data.charAt(0); 

     int correspondingValue = sc.nextInt(); 
     charValues.put(car, correspondingValue); 

    } 

    // Here after exit you can use charValues.get(key) to get the int value associated with the key (a char value) 

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