Java examples for java.lang:Math Number
returns the largest double value that is smaller than d = x * 10exp where x is rounded down to the closest integer.
/*/*from ww w . ja va 2s.c o m*/ JOpenChart Java Charting Library and Toolkit Copyright (C) 2001 Sebastian M?ller http://jopenchart.sourceforge.net This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ChartUtilities.java Created on 21. September 2001, 17:42 */ //package com.java2s; public class Main { public static void main(String[] argv) throws Exception { double d = 2.45678; int exp = 2; System.out.println(floor(d, exp)); } /** This method returns the largest double value that is smaller than * <code> d = x * 10<sup>exp</sup></code> where x is rounded down to * the closest integer. * @param d the double value to be rounded * @param exp the exponent of 10 to which d should be rounded * @return <code> Math.floor(x) * 10<sup>exp</sup></code> */ public static double floor(double d, int exp) { double x = 1.0 * Math.pow(10.0, (double) exp); return Math.floor(d / x) * x; } }