一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Golang - golang強(qiáng)制類型轉(zhuǎn)換和類型斷言

golang強(qiáng)制類型轉(zhuǎn)換和類型斷言

2022-01-25 00:41Kevin_cai09 Golang

這篇文章主要介紹了詳情介紹golang類型轉(zhuǎn)換問題,分別由介紹類型斷言和類型轉(zhuǎn)換,這兩者都是不同的概念,下面文章圍繞類型斷言和類型轉(zhuǎn)換的相關(guān)資料展開文章的詳細(xì)內(nèi)容,需要的朋友可以參考以下

1.強(qiáng)制類型轉(zhuǎn)換

golang是強(qiáng)類型語言,但是和c++,Java不太一樣的是,go中沒有隱式類型轉(zhuǎn)換,go中的類型轉(zhuǎn)換只有:強(qiáng)制類型轉(zhuǎn)換和斷言

在java中:

?
1
2
3
4
5
public static void main(String[] args){
    int a = 1;
    double b = 1.0;
    System.out.println(a * b);
}

在java中這樣是沒有問題,編譯器隱式的把a(bǔ)向上轉(zhuǎn)為double類型

但是在go中是會(huì)報(bào)錯(cuò)的:

golang強(qiáng)制類型轉(zhuǎn)換和類型斷言

需要進(jìn)行強(qiáng)制類型轉(zhuǎn)換:

?
1
2
3
4
5
func Test()  {
 var a int = 1
 var b float32 = 1.0
 fmt.Println(float32(a) * b)
}

go中的強(qiáng)制類型轉(zhuǎn)換為:

?
1
type(v)

普通變量類型int,float,string 都可以使用 type (a)這種形式來進(jìn)行強(qiáng)制類型轉(zhuǎn)換,

比如:

?
1
2
3
4
var a int32  = 10
var b int64 = int64(a)
var c float32 = 12.3
var d float64 =float64(c)

指針的強(qiáng)制類型轉(zhuǎn)換需要用到unsafe包中的函數(shù)實(shí)現(xiàn)

?
1
2
3
4
5
6
func Test()  {
 var a int =10
 var b *int =&a
 var c *int64 = (*int64)(unsafe.Pointer(b))
 fmt.Println(*c)
}

2.類型斷言

go中的類型判斷則是判斷一個(gè)變量是否屬于某一種類型

?
1
2
3
4
5
6
7
func Test()  {
 var a interface{} = 10
 _,isInt := a.(int) // 進(jìn)行類型的斷言的變量必須是空接口
 if isInt{
  fmt.Println(a)
 }
}

形式如下:

?
1
interface{}.(type)

到此這篇關(guān)于golang強(qiáng)制類型轉(zhuǎn)換和類型斷言的文章就介紹到這了,更多相關(guān)golang類型轉(zhuǎn)換內(nèi)容請(qǐng)搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!

原文鏈接:https://blog.csdn.net/weixin_41922289/article/details/117830987

延伸 · 閱讀

精彩推薦
  • Golanggolang 通過ssh代理連接mysql的操作

    golang 通過ssh代理連接mysql的操作

    這篇文章主要介紹了golang 通過ssh代理連接mysql的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧...

    a165861639710342021-03-08
  • Golanggo語言制作端口掃描器

    go語言制作端口掃描器

    本文給大家分享的是使用go語言編寫的TCP端口掃描器,可以選擇IP范圍,掃描的端口,以及多線程,有需要的小伙伴可以參考下。 ...

    腳本之家3642020-04-25
  • Golanggolang的httpserver優(yōu)雅重啟方法詳解

    golang的httpserver優(yōu)雅重啟方法詳解

    這篇文章主要給大家介紹了關(guān)于golang的httpserver優(yōu)雅重啟的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,...

    helight2992020-05-14
  • GolangGolang通脈之?dāng)?shù)據(jù)類型詳情

    Golang通脈之?dāng)?shù)據(jù)類型詳情

    這篇文章主要介紹了Golang通脈之?dāng)?shù)據(jù)類型,在編程語言中標(biāo)識(shí)符就是定義的具有某種意義的詞,比如變量名、常量名、函數(shù)名等等,Go語言中標(biāo)識(shí)符允許由...

    4272021-11-24
  • Golanggolang json.Marshal 特殊html字符被轉(zhuǎn)義的解決方法

    golang json.Marshal 特殊html字符被轉(zhuǎn)義的解決方法

    今天小編就為大家分享一篇golang json.Marshal 特殊html字符被轉(zhuǎn)義的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧 ...

    李浩的life12792020-05-27
  • Golanggolang如何使用struct的tag屬性的詳細(xì)介紹

    golang如何使用struct的tag屬性的詳細(xì)介紹

    這篇文章主要介紹了golang如何使用struct的tag屬性的詳細(xì)介紹,從例子說起,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看...

    Go語言中文網(wǎng)11352020-05-21
  • Golanggo日志系統(tǒng)logrus顯示文件和行號(hào)的操作

    go日志系統(tǒng)logrus顯示文件和行號(hào)的操作

    這篇文章主要介紹了go日志系統(tǒng)logrus顯示文件和行號(hào)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧...

    SmallQinYan12302021-02-02
  • GolangGolang中Bit數(shù)組的實(shí)現(xiàn)方式

    Golang中Bit數(shù)組的實(shí)現(xiàn)方式

    這篇文章主要介紹了Golang中Bit數(shù)組的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧...

    天易獨(dú)尊11682021-06-09
主站蜘蛛池模板: 高清女主播一区二区三区 | 接吻吃胸摸下面啪啪教程 | 91精品国产美女福到在线不卡 | 国产成人精品免费大全 | 单身男女韩剧在线看 | 丝袜足液精子免费视频 | 亚洲成年 | 免费看男人狂躁女人 | 久久久久久久久a免费 | 放荡女小洁的性日记 | 午夜大片在线观看 | 欧美一级专区免费大片 | 日韩精品福利视频一区二区三区 | 第一次处破女18分钟 | 久久精品一区二区三区资源网 | 亚洲精品国产自在现线最新 | 无遮挡h肉动漫在线观看电车 | 青青草国产免费久久久91 | 99精品视频在线观看免费播放 | 欧洲vodafonewifi日本 | 免费在线电视 | 亚洲不卡高清免v无码屋 | 欧美视| 四虎国产成人免费观看 | 67194最新网址| 国产精品自拍一区 | 国产精品视频久久久 | a级亚洲片精品久久久久久久 | 香蕉精品国产高清自在自线 | 免费人成在线观看69式小视频 | 玩50岁四川熟女大白屁股直播 | 亚洲精品中文字幕久久久久久 | 日本高清免费不卡在线 | 欧美乱子伦xxxx12在线 | 免费精品99久久国产综合精品 | 欧产日产国产精品专区 | 亚洲系列国产精品制服丝袜第 | 五月天淫| 日韩成人在线免费视频 | 秋葵丝瓜茄子草莓榴莲樱桃 | 国产区一二三四区2021 |