当前位置: 首页 > wzjs >正文

5 网站建设的基本步骤是哈尔滨市招标网官网

5 网站建设的基本步骤是,哈尔滨市招标网官网,手游传奇发布网站999,济南润尔网站建设技术公司在Go语言中保留float64类型数值的两位小数有多种方法,具体选择哪种方法取决于实际需求。以下是几种常见的方法: 使用 fmt.Sprintf 函数来格式化输出浮点数。这个方法适用于只需要显示结果而不需要进一步计算的场合。 package mainimport ("fmt"…

在Go语言中保留float64类型数值的两位小数有多种方法,具体选择哪种方法取决于实际需求。以下是几种常见的方法:

  1. 使用 fmt.Sprintf 函数来格式化输出浮点数。这个方法适用于只需要显示结果而不需要进一步计算的场合。

    package mainimport ("fmt"
    )func main() {num := 3.141592653389793formatted := fmt.Sprintf("%.2f", num)fmt.Println(formatted) // 输出: 3.14
    }
    

    这种方法虽然简单,但返回的是字符串类型,如果需要继续进行数值计算,则需要将字符串转换回浮点数[2][4]。

  2. 使用 math.Pow10math.Trunc 函数进行截断。这种方法适用于需要在保留小数位数后继续进行数值计算的情况。

    package mainimport ("fmt""math"
    )func TruncateFloat(f float64, prec int) float64 {x := math.Pow10(prec)return math.Trunc(f*x) / x
    }func main() {num := 3.141592653589793truncated := TruncateFloat(num, 2)fmt.Println(truncated) // 输出: 3.14
    }
    

    这个方法中,我们首先将浮点数乘以10的prec次幂,然后使用 math.Trunc 函数截断小数部分,最后再除以10的prec次幂,从而实现保留指定小数位数的效果[4]。

  3. 使用 strconv.FormatFloatstrconv.ParseFloat 函数。这种方法可以更灵活地控制小数位数,并且可以处理四舍五入的情况。

    package mainimport ("fmt""strconv"
    )func FormatFloat(f float64, prec int) float64 {formattedStr := strconv.FormatFloat(f, 'f', prec, 64)result, _ := strconv.ParseFloat(formattedStr, 64)return result
    }func main() {num := 3.141592653589793formatted := FormatFloat(num, 2)fmt.Println(formatted) // 输出: 3.14
    }
    

    在这个例子中,strconv.FormatFloat 将浮点数格式化为字符串,'f' 表示固定小数点格式,prec 表示保留的小数位数。然后使用 strconv.ParseFloat 将字符串转换回浮点数[4]。

  4. 使用 shopspring/decimal 包。这个包提供了更强大的数值计算功能,能够避免浮点数运算中的精度损失,适用于金融和科学计算场景。

    package mainimport ("fmt""github.com/shopspring/decimal"
    )func DecimalRound(f float64, prec int) decimal.Decimal {d := decimal.NewFromFloat(f)return d.Round(prec)
    }func main() {num := 3.141592653589793rounded := DecimalRound(num, 2)fmt.Println(rounded.String()) // 输出: 3.14
    }
    

    这个例子中,decimal.NewFromFloat 将浮点数转换为 decimal.Decimal 类型,然后使用 Round 方法进行四舍五入[4][5]。

对于不四舍五入的情况,可以使用 math.Floormath.Trunc 函数:

  • 使用 math.Floor 函数向下取整来保留两位小数:
    package mainimport ("fmt""math"
    )func main() {num := 3.14159result := math.Floor(num*100) / 100fmt.Println(result) // 输出: 3.14
    }
    
  • 使用 math.Trunc 函数直接截断来保留两位小数:
    package mainimport ("fmt""math"
    )func main() {num := 3.14159result := math.Trunc(num*100) / 100fmt.Println(result) // 输出: 3.14
    }
    
    这两种方法都不会对数值进行四舍五入,而是直接向下取整或截断[2][4]。

此外,如果需要去除末尾的0,可以通过字符串处理来实现:

package mainimport ("fmt""strings"
)func main() {num := 3.14000result := fmt.Sprintf("%.2f", num)result = strings.TrimRight(result, "0")result = strings.TrimRight(result, ".")fmt.Println(result) // 输出: 3.14
}

这种方法首先使用 fmt.Sprintf 格式化浮点数,然后通过 strings.TrimRight 去除末尾的0[2][5]。

综上所述,Go语言提供了多种方法来保留float64类型数值的两位小数,包括四舍五入和不四舍五入的情况。对于需要高精度计算的场景,推荐使用shopspring/decimal库[2][4][5]。

Reference
[1]通过函数将golang float64 保留2位小数 - CSDN博客
[2]Golang实现浮点数精确保留两位小数的多种方法详解 - 云 …
[3]go语言中float64 保留2位小数 - CSDN博客
[4]如何在Golang中将float64类型数值保留指定小数位数 - 云 …
[5]使用Golang实现精确保留两位小数的技巧与实践 - 云原生实践


文章转载自:

http://0jYAwlNN.tmpsc.cn
http://Bh7RQjZ6.tmpsc.cn
http://L6PgKyIE.tmpsc.cn
http://9G9vHitR.tmpsc.cn
http://q8maBHlN.tmpsc.cn
http://cfJ9kTwn.tmpsc.cn
http://FBTHFDE2.tmpsc.cn
http://lkXd3I0W.tmpsc.cn
http://xI7FFsRY.tmpsc.cn
http://ynGR4mJ7.tmpsc.cn
http://aOaOsEo2.tmpsc.cn
http://srOHwEML.tmpsc.cn
http://J1XuHCxu.tmpsc.cn
http://iTXGw90W.tmpsc.cn
http://Ymcwpofq.tmpsc.cn
http://rxjdwcnK.tmpsc.cn
http://H0g7Egc4.tmpsc.cn
http://ovAV5nV6.tmpsc.cn
http://3paPunXL.tmpsc.cn
http://v8MCFPhe.tmpsc.cn
http://zZXL1A9A.tmpsc.cn
http://9B26bzro.tmpsc.cn
http://qhQ07G1u.tmpsc.cn
http://4Uxu6Cr9.tmpsc.cn
http://aekaAzq2.tmpsc.cn
http://YhPVxojn.tmpsc.cn
http://020tqHNF.tmpsc.cn
http://SNisjA9v.tmpsc.cn
http://mwYSkrKQ.tmpsc.cn
http://c26yXxl0.tmpsc.cn
http://www.dtcms.com/wzjs/776744.html

相关文章:

  • 全国培训加盟网站建设食品网站建设需求分析
  • 做网站要审批吗uniform wordpress
  • 深圳 网站托管深圳被点名批评
  • 网站建设常用英语wordpress怎么添加管理员
  • 适合新手做的网站静态wordpress怎么编辑表格
  • 网页设计网站多少钱能看的网址的浏览器
  • 景观建设网站集团公司网页设计内容
  • 张家港优化网站seo怎么可以黑网站域名
  • 网站开发 开票设计网红店铺
  • 个人做网站时不要做什么样的网站手机网站和pc网站
  • 建网站要学哪些软件dede免费网站模板下载
  • 邯郸网站设计哪家专业dw个人简历网页制作
  • 企业网站建设600元宝应宝楠国际学校
  • 贵阳地铁建设网站网页设计制作课程表
  • 大连网站开发招聘WordPress小程序二次修改
  • 万网做网站花多少钱公众号微信
  • 如何去建立和设计一个公司网站网站前端怎么做方法
  • 亳州建设局网站网站建设方面的书籍书籍
  • 网站建设对我有什么好处网站里弹窗怎么做
  • 红安城市建设局投诉网站网站投票系统 js
  • 重庆网站推广流程无极县最新招聘信息
  • 做公司网站需要什么网站查询器
  • 上海企业建站咨询郑州网站建设动态
  • 什么网站可以用手机做兼职赚钱吗东莞网站关键词优化
  • 网站制作咨询公司wordpress语言切换器
  • 秦皇岛建设网站公司.name后缀的网站
  • 怎样在网站上做营业执照公示什么是营销
  • 视频网站如何优化十大永久免费的软件下载
  • 招商加盟网站模板html设计网站视频教程
  • wordpress 搜索 404做seo网站诊断书怎么做