欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

go string to int 字符串與整數(shù)型的互換方式

 更新時(shí)間:2024年07月29日 17:14:27   作者:123hello123  
這篇文章主要介紹了go string to int 字符串與整數(shù)型的互換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

go string to int 字符串與整數(shù)型的互換

package main
 
import (
	"fmt"
	"strconv"
)
 
func main() {
	// 把字符串轉(zhuǎn)換為數(shù)字
	str := "10000"
	ret1, err := strconv.ParseInt(str, 10, 64)
	if err != nil {
		fmt.Printf("paresint failed, err:%v", err)
		return
	}
	fmt.Printf("%#v %Tn", ret1, ret1)
	// 把數(shù)字轉(zhuǎn)換為字符串
	i := int32(97)
	ret2 := fmt.Sprintf("%d", i)
	fmt.Printf("%#v", ret2)
}

golang string 轉(zhuǎn) int,int64,int32

interface{}

interface{} 接口、interface{} 類型很多人都會(huì)混淆。

interface{} 類型是沒(méi)有方法的接口。

由于沒(méi)有 implements 關(guān)鍵字,所以說(shuō)所有的類型都至少實(shí)現(xiàn)了 0 個(gè)方法,所有類型都實(shí)現(xiàn)了空接口。

這意味著,如果編寫(xiě)一個(gè)函數(shù)以 interface{} 值作為參數(shù),那么你可以為該函數(shù)提供任何值。

例如:

func DoSomething(v interface{}) {
   // ...
}

第一種知道是什么類型

如果知道是什么類型的話,就可以直接轉(zhuǎn)

// 假設(shè) v 為 string或int64或float64
func DoSomething(v interface{}) {
	string1 := v.(string)
	int1 := v.(int64)
	float1 := v.(float64)
}

第二種不知道是什么類型

這時(shí)候就可以使用類型斷言,然后再轉(zhuǎn)為具體類型

func interface2Type(i interface{}) {
	switch i.(type) {
	case string:
		fmt.Println("string", i.(string))
		break
	case int:
		fmt.Println("int", i.(int))
		break
	case float64:
		fmt.Println("float64", i.(float64))
		break
	}
}
 
func main() {
	interface2Type("niuben")
	interface2Type(1122)
	interface2Type(11.22)
}

輸出

string niuben
int 1122
float64 11.22

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Go到底能不能實(shí)現(xiàn)安全的雙檢鎖(推薦)

    Go到底能不能實(shí)現(xiàn)安全的雙檢鎖(推薦)

    這篇文章主要介紹了Go到底能不能實(shí)現(xiàn)安全的雙檢鎖,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • Go語(yǔ)言實(shí)現(xiàn)socket實(shí)例

    Go語(yǔ)言實(shí)現(xiàn)socket實(shí)例

    這篇文章主要介紹了Go語(yǔ)言實(shí)現(xiàn)socket的方法,實(shí)例分析了socket客戶端與服務(wù)器端的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • goFrame的gqueue與channe的區(qū)別

    goFrame的gqueue與channe的區(qū)別

    這篇文章主要介紹了goFrame的gqueue與channe的區(qū)別,channel的作用是用于go協(xié)程間的通信,goroutine和channel是支持高并發(fā)的重要組成部分,更多兩者詳細(xì)介紹需要的小伙伴可以參考下面文章內(nèi)容
    2022-06-06
  • Go單元測(cè)試對(duì)數(shù)據(jù)庫(kù)CRUD進(jìn)行Mock測(cè)試

    Go單元測(cè)試對(duì)數(shù)據(jù)庫(kù)CRUD進(jìn)行Mock測(cè)試

    這篇文章主要為大家介紹了Go單元測(cè)試對(duì)數(shù)據(jù)庫(kù)CRUD進(jìn)行Mock測(cè)試的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Go語(yǔ)言實(shí)現(xiàn)二進(jìn)制與十進(jìn)制互轉(zhuǎn)的示例代碼

    Go語(yǔ)言實(shí)現(xiàn)二進(jìn)制與十進(jìn)制互轉(zhuǎn)的示例代碼

    這篇文章主要和大家詳細(xì)介紹了Go語(yǔ)言中實(shí)現(xiàn)二進(jìn)制與十進(jìn)制互相轉(zhuǎn)換的示例代碼,文中的代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-05-05
  • 解決golang結(jié)構(gòu)體tag編譯錯(cuò)誤的問(wèn)題

    解決golang結(jié)構(gòu)體tag編譯錯(cuò)誤的問(wèn)題

    這篇文章主要介紹了解決golang結(jié)構(gòu)體tag編譯錯(cuò)誤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-05-05
  • 詳解如何修改Go結(jié)構(gòu)體的私有字段

    詳解如何修改Go結(jié)構(gòu)體的私有字段

    在 Go 語(yǔ)言中,結(jié)構(gòu)體字段的訪問(wèn)權(quán)限是由字段名的首字母決定的:首字母大寫(xiě)表示公共字段(public),首字母小寫(xiě)表示私有字段(private),本文給大家介紹了如何修改Go結(jié)構(gòu)體的私有字段,需要的朋友可以參考下
    2025-01-01
  • Golang日志庫(kù)logrus的介紹與使用示例代碼

    Golang日志庫(kù)logrus的介紹與使用示例代碼

    Logrus是Go語(yǔ)言的一個(gè)功能豐富的日志庫(kù),支持結(jié)構(gòu)化日志和多級(jí)別日志記錄,它兼容標(biāo)準(zhǔn)log庫(kù),并可通過(guò)自定義Hooks和Formatter進(jìn)行高度定制化,支持集成如syslog等系統(tǒng),便于管理和分析,Logrus還支持自定義日志顏色和格式,以及根據(jù)日志級(jí)別進(jìn)行不同處理,如panic和exit
    2024-10-10
  • 深入理解go sync.Waitgroup的使用

    深入理解go sync.Waitgroup的使用

    WaitGroup在go語(yǔ)言中,用于線程同步,本文主要介紹了深入理解go sync.Waitgroup的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • Go語(yǔ)言對(duì)接微信支付與退款指南(示例詳解)

    Go語(yǔ)言對(duì)接微信支付與退款指南(示例詳解)

    在互聯(lián)網(wǎng)技術(shù)日益發(fā)展的背景下,Go語(yǔ)言憑借并發(fā)處理能力,在后端開(kāi)發(fā)中大放異彩,本文詳細(xì)介紹如何使用Go語(yǔ)言對(duì)接微信支付,完成支付和退款功能,包括準(zhǔn)備工作、初始化微信支付客戶端、實(shí)現(xiàn)支付功能,以及處理支付回調(diào)和退款等
    2024-10-10

最新評(píng)論