婷婷综合国产,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
    777精品伊人久久久久大香线蕉| 国产精品1区2区| 亚洲三级视频在线观看| 国产精品网曝门| 综合网在线视频| 亚洲免费观看在线视频| 亚洲欧美在线视频观看| 亚洲男人的天堂一区二区| 一区二区三区精品| 视频在线在亚洲| 九色|91porny| 岛国一区二区在线观看| 成人少妇影院yyyy| 欧美性猛交xxxx黑人交| 欧美另类高清zo欧美| 精品国产乱码久久久久久久| 国产婷婷精品av在线| 中文字幕亚洲电影| 亚洲一级不卡视频| 久久er99精品| 91最新地址在线播放| 欧美日韩国产另类不卡| 日韩一级二级三级精品视频| 精品国产青草久久久久福利| 1000部国产精品成人观看| 亚洲不卡在线观看| 东方aⅴ免费观看久久av| 91久久精品一区二区三| 欧美电视剧免费全集观看| 欧美激情艳妇裸体舞| 亚洲一区免费观看| 国产综合色精品一区二区三区| 99re8在线精品视频免费播放| 欧美在线观看你懂的| 精品第一国产综合精品aⅴ| 亚洲婷婷综合久久一本伊一区| 亚洲18女电影在线观看| av高清不卡在线| 欧美成人精品二区三区99精品| 亚洲欧美在线观看| 黑人精品欧美一区二区蜜桃 | 国产亚洲精品资源在线26u| 亚洲欧美在线视频| 国产一区中文字幕| 欧美日韩亚洲丝袜制服| 中文字幕在线观看一区二区| 蜜臀av在线播放一区二区三区| 97se亚洲国产综合在线| 国产视频一区二区在线| 免费一级片91| 欧美日韩国产a| 亚洲精品国产精华液| 欧洲中文字幕精品| 国产精品家庭影院| 国产精品99久久不卡二区| 欧美一级高清片在线观看| 亚洲一区二区三区小说| 99久久精品国产导航| 国产三级一区二区| 久久电影国产免费久久电影| 欧美日韩激情一区二区三区| 亚洲日本护士毛茸茸| 成人短视频下载| 中文字幕电影一区| 国产a视频精品免费观看| 久久久五月婷婷| 极品尤物av久久免费看| 精品欧美一区二区在线观看| 日韩精品91亚洲二区在线观看| 欧美日韩一区成人| 日韩av在线免费观看不卡| 欧美丰满少妇xxxxx高潮对白| 五月天国产精品| 日韩一区二区麻豆国产| 色婷婷综合五月| 亚洲综合一区在线| 欧美日韩和欧美的一区二区| 亚洲一区二区三区四区在线观看| 在线一区二区三区做爰视频网站| 樱桃国产成人精品视频| 在线观看免费一区| 婷婷中文字幕综合| 欧美成人一级视频| 国产精品69毛片高清亚洲| 国产精品免费网站在线观看| 91亚洲男人天堂| 一二三区精品视频| 欧美一级xxx| 国产69精品久久久久毛片| 亚洲同性gay激情无套| 欧美在线观看一二区| 日日摸夜夜添夜夜添亚洲女人| 精品蜜桃在线看| 色综合av在线| 免费在线观看成人| 国产精品素人视频| 欧美无乱码久久久免费午夜一区 | 成人性生交大片免费看中文 | 欧美一区在线视频| 国产精品123| 玉米视频成人免费看| 日韩一区二区三区视频在线观看| 国产精品自拍网站| 亚洲第一精品在线| 国产视频亚洲色图| 欧美精品国产精品| 成人av一区二区三区| 日韩国产在线观看一区| 欧美国产成人精品| 日韩一级视频免费观看在线| 99精品视频免费在线观看| 欧美aaaaaa午夜精品| 亚洲欧美综合在线精品| 日韩精品专区在线影院重磅| 91色porny| 国产一区二区三区av电影 | 最近日韩中文字幕| 4438x亚洲最大成人网| 不卡av免费在线观看| 久久国产福利国产秒拍| 亚洲国产日韩在线一区模特| 中文字幕精品一区| 亚洲精品一区二区三区香蕉| 国产精品免费丝袜| xf在线a精品一区二区视频网站| 日本精品免费观看高清观看| 国产精品一区二区不卡| 日本午夜精品视频在线观看 | 亚洲国产成人自拍| 欧美v日韩v国产v| 91麻豆精品国产91久久久使用方法 | 一区二区三区日韩| 国产精品视频一二三| 欧美精品一区二区三区在线 | 成人免费在线播放视频| 久久久午夜精品理论片中文字幕| 日韩一级片网址| 欧美一区二区三区系列电影| 在线视频综合导航| 91麻豆产精品久久久久久 | 亚洲午夜免费电影| 中文字幕一区二区三区不卡在线 | 高清日韩电视剧大全免费| 狠狠色狠狠色综合| 国产一区二区三区最好精华液| 日韩av不卡在线观看| 麻豆精品一区二区av白丝在线| 日韩av一区二| 精品午夜久久福利影院 | 秋霞影院一区二区| 日韩高清电影一区| 久久精品国产99国产精品| 国内精品免费在线观看| 国产91在线观看| 成人污污视频在线观看| 91小视频免费观看| 一本一本大道香蕉久在线精品| 日本道色综合久久| 69精品人人人人| www一区二区| 国产精品美女久久福利网站| 亚洲欧美日韩小说| 婷婷综合在线观看| 久久99热狠狠色一区二区| 国产毛片精品国产一区二区三区| 东方aⅴ免费观看久久av| 91久久国产最好的精华液| 日韩三级视频在线看| 国产日产欧美一区二区三区 | 久久99日本精品| 成人免费毛片app| 欧美撒尿777hd撒尿| 日韩精品一区国产麻豆| 国产精品久久久久久久久免费丝袜 | 激情文学综合丁香| www..com久久爱| 51午夜精品国产| 国产精品久久久久久亚洲伦 | eeuss鲁片一区二区三区在线观看| 97久久超碰精品国产| 91精品国产乱| 中文字幕免费一区| 日韩中文字幕av电影| 成人三级伦理片| 日韩女优av电影在线观看| 亚洲欧美在线aaa| 蜜臀a∨国产成人精品| jlzzjlzz亚洲日本少妇| 精品国产凹凸成av人网站| 亚洲日本青草视频在线怡红院| 欧美aaaaaa午夜精品| 91论坛在线播放| 国产欧美中文在线| 免费在线观看成人| 欧美日韩中文一区| 国产精品久久久久久亚洲毛片 | eeuss鲁片一区二区三区| 日韩一区二区免费在线观看| 亚洲欧美另类在线| 成人午夜免费av|