Double 数据保留两位小数二:直接截取小数后面两位,不进行四舍五入

简介: package com; public class T2 { public static void main(String[] args) { System.

package
com; public class T2 { public static void main(String[] args) { System.out.println(calculateProfit(0)); System.out.println(calculateProfit(0.963)); System.out.println(calculateProfit(0.123456)); System.out.println(calculateProfit(100)); System.out.println(calculateProfit(.9654)); } /** * 保留double类型小数后两位,不四舍五入,直接取小数后两位 比如:10.1269 返回:10.12 * * @param doubleValue * @return */ public static String calculateProfit(double doubleValue) { // 保留4位小数 java.text.DecimalFormat df = new java.text.DecimalFormat("#.0000"); String result = df.format(doubleValue); // 截取第一位 String index = result.substring(0, 1); if (".".equals(index)) { result = "0" + result; } // 获取小数 . 号第一次出现的位置 int inde = firstIndexOf(result, "."); // 字符串截断 return result.substring(0, inde + 3); } /** * 查找字符串pattern在str中第一次出现的位置 * * @param str * @param pattern * @return */ public static int firstIndexOf(String str, String pattern) { for (int i = 0; i < (str.length() - pattern.length()); i++) { int j = 0; while (j < pattern.length()) { if (str.charAt(i + j) != pattern.charAt(j)) break; j++; } if (j == pattern.length()) return i; } return -1; } }
相关文章
|
4月前
|
C++
[Halcon] 和C++数据之间的转换(HTuple、double、QString等)
[Halcon] 和C++数据之间的转换(HTuple、double、QString等)
122 1
|
5月前
|
Java
Java对double值进行四舍五入,保留两位小数的几种方法
Java对double值进行四舍五入,保留两位小数的几种方法
|
6月前
|
JSON 数据格式
Gson转换json数据为HashMap时long类型变为double问题解决
今天再使用Gson处理json数据的时候碰到了一个问题 , 当我使用如下代码解析json数据的时候 , requestTime就变为了double类型
123 0
JAVA Double 类型数据保留2位小数
JAVA Double 类型数据保留2位小数
217 0
JAVA Double 类型数据保留2位小数
Java使用BigDecimal保留double、float运算精度、保留指定位数有效数字、四舍五入
工具类 package ……; import java.math.BigDecimal; /** * Created by kongqw on 2015/12/10.
990 0
使用Java正则表达式去掉Double类型的数据后面多余的0
方法 /** * 使用java正则表达式去掉多余的.与0 * @param s * @return */ public static String subZeroAndDot(String s){ if(s.
1439 0
|
C++
C/C++ 双精度double 数据相加出错缺陷解释
不知道有没有人和我一样遇到过这样一个问题,请看下面代码。 1 #include 2 using namespace std; 3 int main(){ 4 double a=2.
777 0
|
4月前
|
存储 Java
百度搜索:蓝易云【Java语言之float、double内存存储方式】
由于使用IEEE 754标准进行存储,float和double类型可以表示非常大或非常小的浮点数,并且具有一定的精度。然而,由于浮点数的特性,它们在进行精确计算时可能会存在舍入误差。在编写Java程序时,需要注意使
59 0
|
1月前
|
C#
C# 字节数组与INT16,float,double之间相互转换,字符数组与字符串相互转换,
C# 字节数组与INT16,float,double之间相互转换,字符数组与字符串相互转换,
37 1

热门文章

最新文章