精华内容
下载资源
问答
  • Double转String

    千次阅读 2017-11-10 09:48:28
    package com.ffcs.oss.demo;import java.text.DecimalFormat;import org.junit.Test; public class StringDemo1 { /** * double转string保留小数的方式 * */ @Test public void doubleToStri
    package com.ffcs.oss.demo;
    
    import java.text.DecimalFormat;
    
    import org.junit.Test;
    
    
    public class StringDemo1 {
         /**
          * double转string保留小数的方式
          * 
          */
        @Test
        public void doubleToString(){
            /**
             * 方式一(四舍五入):
             */
            DecimalFormat    df   = new DecimalFormat("######0.00");   
            double d1 = 3.23556;  
            double d2 = 0.0;
            double d3 = 2.0;
            String df1 = df.format(d1); 
            String df2 = df.format(d2); 
            String df3 = df.format(d3); 
            System.out.println("df1:"+df1+"\ndf2:"+df2+"\ndf3:"+df3);
    
            /**
             * 方式二(四舍五入):
             */
            double d4 = 3.1465926;
            String result = String .format("%.2f",d4);
            System.out.println("result:"+result);
    
            /**
             * 方式三(用字符串截取不四舍五入):
             */
            double number=1.226;
            String s=Double.toString(number);
            String s1=s.substring(0,s.indexOf(".")+3);
            System.out.println("s1:"+s1);
    
        }
    
    }
    

    输出结果:

    df1:3.24
    df2:0.00
    df3:2.00
    result:3.15
    s1:1.22

    展开全文
  • Double String

    万次阅读 2018-07-23 19:12:06
    场景 Double整数部分超6位时用科学计数法表示,如123456789.50表示为1.234567895E8 解决 double d = 123456789.50; DecimalFormat format = new ...String str= format.format(d); System.out.println(str);...

    场景

    Double 整数部分超 6 位用科学计数法表示,如 123456789.50 表为 1.234567895E8 致精度丢失。

    解决

    double d = 123456789.50;
    DecimalFormat format = new DecimalFormat("#.00");
    String str= format.format(d);
    System.out.println(str);
    

    DecimalFormat df = new DecimalFormat("0.000000");
    String ss= df.format(double/BigDecimal);
    

    NumberFormat format = NumberFormat.getInstance();
    format.setMinimumFractionDigits(6);
    String s= format.format(double/BigDecimal);
    
    展开全文
  • java double转string

    万次阅读 2016-04-25 20:00:06
    java中,double转string可以用Double.toString(d)的方式。但是,这种方式有隐藏的坑,请大家看仔细了:package hello;public class DoubleToString { public static void test1(double dou) { String dou_str = ...

    项目github地址:bitcarmanlee easy-algorithm-interview-and-practice
    欢迎大家star,留言,一起学习进步

    java中,double转string可以用Double.toString(d)的方式。但是,这种方式有隐藏的坑,请大家看仔细了:

    package hello;
    
    public class DoubleToString {
        
        public static void test1(double dou) {
            String dou_str = Double.toString(dou);
            if (dou_str.equals("20160101")) {
                System.out.println("YES!");
            } else {
                System.out.println("NO!");
            }
        }
        
        public static void main(String[] args) {
            double dou = 20160101;
            test1(dou);
        }
    }
    

    当运行上述代码以后,控制台华丽丽地输出:

    NO!
    

    我们在第六行后面打印出dou_str:

    2.0160101E7
    

    原来jvm这货将double用科学计数法表示了double,怪不得转成string以后变了样。。。

    将上面代码修改如下:

    package hello;
    
    import java.text.NumberFormat;
    
    public class DoubleToString {
    	
        public static void test2(double dou) {
            Double dou_obj = new Double(dou);
            NumberFormat nf = NumberFormat.getInstance();
            nf.setGroupingUsed(false);
            String dou_str = nf.format(dou_obj);
            System.out.println("dou_str is:" + dou_str);
            if (dou_str.equals("20160101")) {
            	System.out.println("YES!");
            } else {
            	System.out.println("NO!");
            }
        }
    	
    	public static void main(String[] args) {
    		double dou = 20160101;
    		test2(dou);
    	}
    }
    

    再运行,再输出,这下就OK了:

    dou_str is:20160101
    YES!
    
    展开全文
  • 本文链接地址: 【整理】C++ string转int,string转doublestring转long,int转string,double转string… C++开发中,经常遇到各种基本类型与string的转换,掌握本博文,便可以轻松应对C++各基本类型与string的...
    
    

    C++开发中,经常遇到各种基本类型与string的转换,掌握本博文,便可以轻松应对C++各基本类型与string的转换(比如:

    int转string,double转string,long转string,string转int,string转double,string转long

    ...)。

    第一种:基于C++ 11标准:

    基于C++11标准

    如果你用的编译器是基于最新的C++11标准,那么这个问题就变的很简单,因为<string>中已经封装好了对应的转换方法:

    标准库中定义了to_string(val);可以将其它类型转换为string。还定义了一组stoi(s,p,b)、stol(s,p,b)、stod(s,p,b)等转换函数,可以函数,可以分别转化成int、long、double等.

       stoi(s,p,b);stol(s,p,b);stoul(s,p,b);stoll(s,p,b);stoull(s,p,b); 返回s的起始子串(表示整数内容的字符串)的数值,返回值的类型分别为:int、long、unsigned long、long long、unsigned long long.其中b表示转换所用的基数,默认为10(表示十进制).p是size_t的指针,用来保存s中第一个非数值字符的下标,p默认为0,即函数不返 回下标.

       stof(s, p); stod(s, p); stold(s, p); 返回s的起始子串(表示浮点数内容)的数值,返回值的类型分别是float、double、long double.参数p的作用与整数转换函数中的一样。

    voidtestTypeConvert()
    {
        //int --> string
        inti = 5;
        string s = to_string(i);
        cout << s << endl;
        //double --> string
        doubled = 3.14;
        cout << to_string(d) << endl;
        //long --> string
        longl = 123234567;
        cout << to_string(l) << endl;
        //char --> string
        charc = 'a';
        cout << to_string(c) << endl;   //自动转换成int类型的参数
        //char --> string
        string cStr; cStr += c;
        cout << cStr << endl;
     
     
        s = "123.257";
        //string --> int;
        cout << stoi(s) << endl;
        //string --> int
        cout << stol(s) << endl;
        //string --> float
        cout << stof(s) << endl;
        //string --> doubel
        cout << stod(s) << endl;
    }


    第一种方法记得编译的时候加上支持C++ 11的参数:-std=c++0x

    输出结果:

    5
    3.140000
    123234567
    97
    a
    123
    123
    123.257
    123.257


    第二种:C++ 11标准之前:

    C++11标准之前

    C++11标准之前没有提供相应的方法可以调用,就得自己写转换方法了,代码如下:

    从其它类型转换为string,定义一个模板类的方法。

    从string转换为其它类型,定义多个重载函数。

    #include <strstream>
    template<classT>
    string convertToString(constT val)
    {
        string s;
        std::strstream ss;
        ss << val;
        ss >> s;
        returns;
    }
     
     
    intconvertStringToInt(conststring &s)
    {
        intval;
        std::strstream ss;
        ss << s;
        ss >> val;
        returnval;
    }
     
    doubleconvertStringToDouble(conststring &s)
    {
        doubleval;
        std::strstream ss;
        ss << s;
        ss >> val;
        returnval;
    }
     
    longconvertStringToLong(conststring &s)
    {
        longval;
        std::strstream ss;
        ss << s;
        ss >> val;
        returnval;
    }
     
    voidtestConvert()
    {
        //convert other type to string
        cout << "convert other type to string:" << endl;
        string s = convertToString(44.5);
        cout << s << endl;
        intii = 125;
        cout << convertToString(ii) << endl;
        doubledd = 3.1415926;
        cout << convertToString(dd) << endl;
     
        //convert from string to other type
        cout << "convert from string to other type:" << endl;
        inti = convertStringToInt("12.5");
        cout << i << endl;
        doubled = convertStringToDouble("12.5");
        cout << d << endl;
        longl = convertStringToLong("1234567");
        cout << l << endl;
    }


    结果如下:

    convert other type to string:
    44.5
    125
    3.14159
    convert from string to other type:
    12
    12.5
    1234567


    展开全文
  • C# string转doubledouble转string

    千次阅读 2020-03-14 19:52:15
    string转double string str_test_wall; double numDouble= double.Parse(str_test_wall); double转string double numDouble = 123.321; string str_test_wall= Convert.ToString(numDouble); ...
  • c++ string转int, double,int,double转string

    千次阅读 2019-07-02 11:56:25
    c++ string与常用数值变量互 写了几个字符串与数值变量互相转换的几个函数,每次用到都要上网查一堆,耽误时间,写好放到这里备用。方法有很多,这里列出来测试过能用的,其他方法慢慢添加。以下函数自动判断...
  • Java double转String

    千次阅读 2017-04-10 03:36:07
    把一个double类型的值string,网上有很多的方法,包括用String.valueOf(Double d),或者 String str = "" + d, 或者用DecimalFormat df = new DecimalFormat("#.00"), 以及用NumberFormat类等。但是,当double...
  • C++ double转string

    千次阅读 2018-03-07 18:48:13
    #include &lt;sstream&gt; string doubleToString(double num) { stringstream ss; string str; ss &lt;&lt; num; ss &gt;&gt; str; return str; }
  • 请问怎么将double转string才能不损失数据本身的小数位数呢,例如,将1.000转换为“1.000” 直接转换会变成1,而使用format则需要指定保留小数点位数,否则自动保留6位 可不可以什么都不要做,我就想个字符串而已...
  • C++ int float double 转string

    千次阅读 2018-02-28 11:48:43
    std命令空间下有一个C++标准库函数std::to_string(),可用于将数值类型转换为string。使用时需要include头文件&lt;string&gt;。#include &lt;string&gt; //一定要有这个double X =3.22225252525;...
  • Java 中数值较大的double转string

    千次阅读 2019-06-20 09:44:37
    问题:当double数值较大时,比如20160101,在转化为string时,jvm转换成了科学记数法,就是 2.0160101E7; 解决: /* * double转为string * */ public static String DoubletoString(double dou){ Double dou_...
  • 用DecimalFormat来格式化double,这样转换成字符串就不会采用科学计数法。 /** * 用DecimalFormat来格式化double结果,这样转换成字符串就不会采用科学计数法... public static String double2Str(Double d) { ...
  • 保留小数点后两位的方法: Double d=100.000; String.format("%.2f",d); 保留小数点后一位的方法; Double d=100.000; String.format("%.1f",d);...String.format()这个方法仅支持Double和Float类型 ...
  • c# double转string保留两位小数

    千次阅读 2017-12-30 21:41:21
    double tmp = 3.11415; string s = tmp.toString(“f2”); 这样就是保留两位小数
  • 1、std:to_string()方法... double d = 3.1415926535897932384; std::string str = std::to_string(d); std::cout << str << std::endl; // 3.141593 2、使用stringstream,在输入流时使用setprec...
  • 最近有个项目在数据库存的类型是double 返回前端需要返回string类型 默认的转换数据比较小或者很大的时候自动返回科学计数法的格式返回 前端没有办法处理,需要后台处理一下 第一次使用new BigDecimal(number....
  • double转string出现科学技术法问题

    千次阅读 2017-11-21 15:26:20
    在项目中,遇到一个问题,关于金额的设置,把金额设置的很大时,如:9999999999999…n个9,...解决方案:用DecimalFormat来格式化double和float的结果,这样转换成字符串就不会采用科学计数法。举例:double money=999
  • C++中double转string函数

    千次阅读 2013-04-03 10:00:59
    使用stringStream类: ...string DoubleToString(double d) {  //Need #include  using namespace std;  string str;  stringstream ss;  ssd;  ss>>str;  return str; } 返回的
  • string[] str = specification2.Split('*'); specification2 = string.Empty; for (int i = 0; i ; i++) { double outpar = 0; if (!double.TryParse(str[i], out outpar)) { Regex regex = new Regex("[A-Z]...
  • #include <iostream>...std::string doubleToString(const double &val) { char* chCode; chCode = new char[20]; sprintf(chCode, "%.2lf", val); std::string str(chCode); delete[]chCode
  • 在我们做的项目中,有一个字符串的生成,我们需要double去拼接,结果发现了,拼接后的字符串,那个double值用科学计数法表示了,有用int试了一下,发现int不存在这个问题,只有double和float包括各自的包装类也有这...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 939,188
精华内容 375,675
关键字:

double转string