Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Числа с плавающей точкой / 7 сообщений из 7, страница 1 из 1
24.01.2005, 12:50
    #32879818
LiQuid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
Скажите пожалуйста, есть ли какой нибудь метод который число с пл. точкой округляет до сотых?
Типа Math.метод(float a);
...
Рейтинг: 0 / 0
24.01.2005, 13:20
    #32879914
ponomarevvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
NumberFormat не подходит?
--С уважением, ponomarevvb--
...
Рейтинг: 0 / 0
24.01.2005, 16:23
    #32880555
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
Тебе какое округление надо: с избытком, с недостатком (приведение типа), математическое?
...
Рейтинг: 0 / 0
25.01.2005, 08:18
    #32881419
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
maytonТебе какое округление надо: с избытком, с недостатком (приведение типа), математическое?давай все три
...
Рейтинг: 0 / 0
25.01.2005, 09:08
    #32881467
LiQuid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
Я тут написал какую топ рогу, правда до сотых округляет:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
 public   static   float  round( float  getFloat) {
     float  result =  0 ;
     boolean  t = true;
     int  index =  0 ;
    String First = "", Second = "";
     int  count =  0 ;
    String getString =  Double .toString(getFloat);
     for  ( int  i =  0 ; i < getString.length(); i++) {
       if  (getString.charAt(i) != '.') {
        First += getString.charAt(i);
      }
       else  {
        index = i +  1 ;
        First += '.';
         break ;
      }
    }
     for  ( int  i = index; i < getString.length(); i++) {
      count++;
    }
     if  (count ==  1 ) Second = getString.substring(index, index +  1 );
     if  (count >=  2 ) Second = getString.substring(index, index +  2 );
    result =  Float .parseFloat(First + Second);
     return  result;
  }
больше вариантов не вижу.
...
Рейтинг: 0 / 0
25.01.2005, 09:34
    #32881511
mozheyko_d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
LiQuidЯ тут написал какую топ рогу, правда до сотых округляет:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
 public   static   float  round( float  getFloat) {
     float  result =  0 ;
     boolean  t = true;
     int  index =  0 ;
    String First = "", Second = "";
     int  count =  0 ;
    String getString =  Double .toString(getFloat);
     for  ( int  i =  0 ; i < getString.length(); i++) {
       if  (getString.charAt(i) != '.') {
        First += getString.charAt(i);
      }
       else  {
        index = i +  1 ;
        First += '.';
         break ;
      }
    }
     for  ( int  i = index; i < getString.length(); i++) {
      count++;
    }
     if  (count ==  1 ) Second = getString.substring(index, index +  1 );
     if  (count >=  2 ) Second = getString.substring(index, index +  2 );
    result =  Float .parseFloat(First + Second);
     return  result;
  }
больше вариантов не вижу.

А вот так не попроще ?


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 public   class  a {
         public   static   void  main(String[] args) {
                 try  {
                         if  (args.length !=  1 )
                                 throw   new  Exception("Using java a <double number>");
                         double  d =  Double .parseDouble(args[ 0 ]);
                        System.out.println(Math.round(d *  100 ) /  100 . 0 );
                }
                 catch (Exception e) {
                        System.out.println(e.getMessage());
                }
        }
}
...
Рейтинг: 0 / 0
25.01.2005, 11:01
    #32881759
Зашедший
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа с плавающей точкой
Еще зависит от того, какие числа используете. Например, часто для работы с большими числами и денежными значениями юзаются BigDecimal. У них есть метод setScale(int,int), где указываются параметрами и точность, и метод округления. А вот преобразовывать числа путем преобразования их в строку, а потом обратно, да еще работать со String, а не с предназначенными специально для манипуляций над строками StringBuffer-ом - жестокое извращение. Мой предыдущий начальник за такую функцию повбывав бы.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Числа с плавающей точкой / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]