Преобразование шестнадцатеричной строки в целое число вызывает исключение NumberFormatException?

Итак, в Java вы знаете, как объявлять целые числа следующим образом:

int hex = 0x00ff00;

Я думал, что вы должны быть в состоянии обратить этот процесс вспять. У меня есть этот код:

Integer.valueOf(primary.getFullHex());

где первичный — это объект пользовательского класса Color. Его конструктор принимает целое число для непрозрачности (0 -99 )и шестнадцатеричную строку (, например.00ff00).

Это метод getFullHex:

public String getFullHex() {
    return ("0x" + hex);
}

Когда я вызываю этот метод, он дает мне этоNumberFormatException:

java.lang.NumberFormatException: For input string: "0xff0000"

Я не могу понять, что происходит. Может кто-нибудь объяснить?

36
задан mattbdean 7 July 2012 в 19:17
поделиться