婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > golang 比較浮點數的大小方式

golang 比較浮點數的大小方式

熱門標簽:外呼系統用什么卡 電話機器人軟件免費 百度地圖標注后傳給手機 外呼系統顯本地手機號 壽光微信地圖標注 excel地圖標注分布數據 涿州代理外呼系統 阿克蘇地圖標注 評價高的400電話辦理

Golang浮點數比較和運算會出現誤差。

浮點數儲存至內存中時,2的-1、-2……-n次方不能精確的表示小數部分,所以再把這個數從地址中取出來進行計算就出現了偏差。

package main
import (
	"errors"
	"fmt"
	"github.com/shopspring/decimal"
)
func FloatCompare(f1, f2 interface{}) (n int, err error) {
	var f1Dec, f2Dec decimal.Decimal
	switch f1.(type) {
	case float64:
		f1Dec = decimal.NewFromFloat(f1.(float64))
		switch f2.(type) {
		case float64:
			f2Dec = decimal.NewFromFloat(f2.(float64))
		case string:
			f2Dec, err = decimal.NewFromString(f2.(string))
			if err != nil {
				return 2, err
			}
		default:
			return 2, errors.New("FloatCompare() expecting to receive float64 or string")
		}
	case string:
		f1Dec, err = decimal.NewFromString(f1.(string))
		if err != nil {
			return 2, err
		}
		switch f2.(type) {
		case float64:
			f2Dec = decimal.NewFromFloat(f2.(float64))
		case string:
			f2Dec, err = decimal.NewFromString(f2.(string))
			if err != nil {
				return 2, err
			}
		default:
			return 2, errors.New("FloatCompare() expecting to receive float64 or string")
		}
	default:
		return 2, errors.New("FloatCompare() expecting to receive float64 or string")
	}
	return f1Dec.Cmp(f2Dec), nil
}
func main() {
	a:=4.0
	b:="4"
	fmt.Println(FloatCompare(a,b))
}

補充:golang 判斷2個浮點型數字是否相同

判斷2個浮點型數字是否相同的方法(假定整數部分+小數點后3位相同,則視為相同)

首先將2個浮點型數字轉換為string數據

將float類型的數據轉換成string

func Decimal(value float32) string {
   value1 := fmt.Sprintf("%.6f", value)
   return value1
}

比較兩個由float型數據轉化成string的數據是否相同是否相同

func Compare(val1,val2 string) bool {
   indexf :=strings.Index(val1,".") + 4
   indexs :=strings.Index(val2,".") + 4
   if indexs != indexf {
      return false
   }else {
      if val1[0:indexf] == val2[0:indexs]{
         return true
      }else {
         return false
      }
   }
}

補充:golang 浮點數操作

數據庫中金額元存儲的數據結構使用的是decimal(15,2),golang中使用float64保存變量內容。通過轉換將 float64 -> int64

最簡單的方式:int64(float64 * 100),但是由于浮點數在計算機內的表示方式問題導致有一部分數據會出現問題,

例如:

var v = 67.6  
fmt.Println(int64(v *100)) 輸出結果為:6759
 

解決方法:

使用"github.com/shopspring/decimal"包,將對浮點數進行精確計算,例如:

f1 := decimal.NewFromFloat(v)
f2 := decimal.NewFromFloat(100)
fmt.Println(f1.Mul(f2).IntPart()) 輸出結果為6760

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • golang實現對docker容器心跳監控功能
  • 淺談golang 中time.After釋放的問題
  • golang 定時任務方面time.Sleep和time.Tick的優劣對比分析
  • golang日志包logger的用法詳解
  • golang elasticsearch Client的使用詳解
  • Golang的func參數及返回值操作
  • golang協程池模擬實現群發郵件功能
  • Golang: 內建容器的用法

標簽:欽州 蘭州 汕頭 雞西 重慶 吐魯番 梅河口 銅川

巨人網絡通訊聲明:本文標題《golang 比較浮點數的大小方式》,本文關鍵詞  golang,比較,浮,點數,的,大小,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《golang 比較浮點數的大小方式》相關的同類信息!
  • 本頁收集關于golang 比較浮點數的大小方式的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲一区二区三区四区不卡| 国产精品二三区| 在线不卡中文字幕| 国产视频视频一区| 亚洲日本一区二区| 亚洲福利一区二区三区| 久久国产精品第一页| 色婷婷久久综合| 国产欧美一区二区在线观看| 麻豆精品视频在线观看免费| 91福利社在线观看| 亚洲色图一区二区| 色综合夜色一区| 国产精品久久久一本精品 | 欧美电影免费观看高清完整版在线| 久久综合国产精品| 蓝色福利精品导航| 欧美日韩在线三级| 亚洲欧美日韩小说| 色一区在线观看| 亚洲无线码一区二区三区| 99免费精品在线观看| 国产亚洲欧美中文| 亚洲成人精品影院| 韩国精品在线观看| 欧美激情一区二区三区全黄| 91精品免费观看| 国产欧美一区二区在线观看| 丁香婷婷综合色啪| 亚洲天堂免费看| 欧美性xxxxxx少妇| 亚洲国产cao| 欧美一区二区三区在线电影| 国产亚洲成aⅴ人片在线观看| 成人av中文字幕| 亚洲色图视频网站| 日韩欧美成人午夜| 福利一区福利二区| 国产精品亚洲成人| 亚洲欧美在线视频观看| av一本久道久久综合久久鬼色| 欧美精品一区二区高清在线观看| 日韩av在线免费观看不卡| 久久精品男人天堂av| 欧美日韩的一区二区| 亚洲成年人网站在线观看| 欧美顶级少妇做爰| 成人美女视频在线观看| 日韩不卡一区二区| 国产精品久久久久久久久免费丝袜 | 一区二区三区高清| 午夜视频在线观看一区二区三区| 欧美日韩中文字幕精品| 国产一区二区三区香蕉| 亚洲精品乱码久久久久久| 精品剧情v国产在线观看在线| 国产精品白丝jk白祙喷水网站| 欧美韩日一区二区三区| 在线一区二区三区四区五区| 国产福利不卡视频| 亚洲国产另类av| 一区二区国产视频| 日韩欧美亚洲一区二区| 一本色道久久综合亚洲精品按摩| 日本道精品一区二区三区| 日韩中文字幕亚洲一区二区va在线| 国产日韩精品一区二区三区在线| 日韩亚洲欧美高清| 亚洲精品在线三区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 高清在线不卡av| 国产毛片精品一区| 欧美影院一区二区| 欧美一区二区三区人| 久久蜜桃av一区精品变态类天堂| 亚洲视频一区在线观看| 亚洲国产精品麻豆| 国产一区二区三区国产| 欧美综合一区二区| 中文字幕亚洲区| 国产麻豆日韩欧美久久| 在线精品亚洲一区二区不卡| 欧美精品久久99| 亚洲一区免费在线观看| 99久久精品国产网站| 久久久久亚洲综合| 国产剧情一区二区| 欧美一区三区二区| 日本一区二区视频在线观看| 老汉av免费一区二区三区 | 亚洲国产你懂的| 亚洲制服丝袜av| 欧美区视频在线观看| 久久精品一区蜜桃臀影院| 蜜臀av一区二区三区| 69堂精品视频| 男女男精品视频网| 亚洲精品一线二线三线无人区| 天天操天天综合网| 国产三级一区二区| 色悠悠亚洲一区二区| 自拍偷在线精品自拍偷无码专区| 成人精品视频.| 五月婷婷久久丁香| 亚洲女女做受ⅹxx高潮| 亚洲国产精品成人久久综合一区 | 国产精品嫩草影院com| 欧美在线观看视频在线| 久久国产欧美日韩精品| **网站欧美大片在线观看| 久久综合五月天婷婷伊人| 大尺度一区二区| 久久99久久久久| 一片黄亚洲嫩模| 国产精品国产三级国产普通话99| 日韩欧美色电影| 欧美一级欧美三级在线观看| 91激情五月电影| 日本韩国精品在线| 欧美日韩亚洲不卡| 欧美精品丝袜中出| 3d动漫精品啪啪1区2区免费 | 精品处破学生在线二十三| 日韩一区二区在线观看| 国产日韩精品视频一区| 成人精品一区二区三区中文字幕| 久久99国产精品麻豆| 日本成人在线看| 国产成人免费网站| 91啪亚洲精品| 欧美精品一区二区三区蜜桃| 国产精品久久久久影院色老大| 亚洲精品一卡二卡| 国产精品一区二区在线播放| 99在线精品视频| 日韩三级视频在线观看| 国产精品视频免费看| 亚洲在线视频免费观看| 国产一区二区影院| 欧美一级在线观看| 亚洲电影中文字幕在线观看| 国产一区二三区| 日韩欧美一级在线播放| 亚洲综合图片区| 欧美精品一二三| 欧美精品亚洲一区二区在线播放| 成人精品gif动图一区| 夜夜精品视频一区二区 | 日本三级韩国三级欧美三级| 91精品婷婷国产综合久久性色| 麻豆成人免费电影| 亚洲欧美国产毛片在线| 91麻豆精品国产综合久久久久久| 国产成人亚洲综合a∨婷婷图片| 国产精品久久久久一区二区三区 | 91精品中文字幕一区二区三区| 亚洲成人综合网站| 在线免费一区三区| 天堂久久久久va久久久久| 欧美日韩国产在线观看| 亚洲美女视频在线观看| 色综合久久88色综合天天| 国产精品色哟哟| 欧美日韩一区二区在线视频| 日韩精品亚洲一区| 5月丁香婷婷综合| 国产中文字幕精品| 精品国产第一区二区三区观看体验 | 91福利视频在线| 国产欧美精品在线观看| 成人精品国产一区二区4080| 亚洲国产精品久久久久秋霞影院| 色呦呦日韩精品| 日韩高清国产一区在线| 成人免费视频国产在线观看| 精品国产乱码久久久久久免费| 成人a级免费电影| 久久 天天综合| 五月激情丁香一区二区三区| 99久久99久久久精品齐齐| 中文字幕一区二区在线观看| 欧美色爱综合网| 日韩精品一区二区三区四区视频| 一区二区三区在线播| 欧美经典一区二区| 91福利视频久久久久| 色婷婷精品久久二区二区蜜臀av| 日日摸夜夜添夜夜添国产精品 | 欧美日韩你懂得| 夜夜精品浪潮av一区二区三区 | 欧美日韩不卡一区二区| 精品视频在线免费看| 在线观看亚洲成人| 99精品欧美一区二区蜜桃免费| 日韩成人精品视频| 肉肉av福利一精品导航| 天天色综合天天| 国产一区二区三区精品欧美日韩一区二区三区 | 国产欧美一区二区在线| 日一区二区三区|