Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java ME (J2ME) > преобразовать текст в число и наоборот


Автор: zalim 25.3.2007, 21:36
Имеем тестовую строку. Нужно преобразовать его в число, прибавить 30 %. Ответ округлить в целое и преобразовать обратно в текст. 
Как это сделать или где можно прочитать?

Автор: W0LF 25.3.2007, 22:20
Цитата

Имеем тестовую строку. Нужно преобразовать его в число

Код

String stringValue = "345";
int intValue = -1;
try{
    intValue = Integer.parseInt(stringValue)
} catch (NumberFormatException nfe) {
    System.out.println(getClass().getName() + ": can't parse String :" + nfe.getMessage);

}

Цитата

прибавить 30 %

Код

if (intValue != -1) {
    intValue += 30 * intValue / 100
}

Цитата

Ответ округлить в целое

юзаем int, поэтому и так целое будет
Цитата

преобразовать обратно в текст

Код

stringValue = String.valueOf(intValue);

Цитата

где можно прочитать?

в поиске по форуму искал? вроде было где-то

M
W0LF
P.S. Это вопрос по общей яве;)

Автор: zalim 26.3.2007, 17:01
W0LF,  спасибо большоеsmile

А как сделать, если например не на 30%, а на 31,2%. В Dephi это real, а здесь как будет?
И еще
Код

int intValue = -1; и if (intValue != -1)
 это кажется не нужно, так она не работает.

P.S. Я только начинающий......


Автор: SevenM 3.4.2007, 07:08
Цитата(zalim @ 26.3.2007,  17:01)
А как сделать, если например не на 30%, а на 31,2%. В Dephi это real, а здесь как будет?


Код

  intValue += 312 * intValue / 1000;

Это уже не Java, это математика.

Автор: W0LF 3.4.2007, 11:48
Цитата

Это уже не Java, это математика.

Не совсем.
(int)(312 * intValue / 1000) != (double)(312 * intValue / 1000) 
точнее не всегда равен
Это тип double в cldc11

Автор: SevenM 4.4.2007, 04:30
Цитата(W0LF @  3.4.2007,  11:48 Найти цитируемый пост)
Не совсем.
(int)(312 * intValue / 1000) != (double)(312 * intValue / 1000) 
точнее не всегда равен

Ну так можно уже углубится очень далеко.
Человеку нужно было найти 31.2%.
к тому же в этом сравнении Java будет (скорее всего) приводить к одному типу... а вот к какому это уже вопрос.. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)