Go語言的基礎類型

一基礎數據類型?

一、布爾型(Bool)

  • 定義:表示邏輯真 / 假,僅有兩個值:true?和?false
  • 內存占用:1 字節
  • 使用場景:條件判斷、邏輯運算

二、數值型(Numeric)

1. 整數類型(Integer)

  • 特殊類型
    • byteuint8?的別名,用于處理 ASCII 字符
    • runeint32?的別名,用于表示 Unicode 字符(如中文、 emoji)

2. 浮點類型(Float)

三,字符串型(String)

  • 本質:不可變的 UTF-8 編碼字節序列
  • 特性
    • 支持索引訪問:s[0]?獲取第一個字節(非字符!)
    • 字符串拼接:+?運算符
    • 原生支持 Unicode,可包含任意字符(中文、表情等)
    • 1.?byte?類型

    • 定義與本質byte?是?uint8?的別名,占用 1 個字節的內存空間,其取值范圍是 0 到 255。在 Go 里,byte?類型主要用于處理 ASCII 字符,因為 ASCII 字符集里的字符可以用一個字節來表示。
    • 使用場景:當你處理只包含 ASCII 字符的字符串時,用?byte?類型會比較合適,比如處理簡單的英文文本、基本的數字和符號等。
    • 2.?rune?類型

    • 定義與本質rune?是?int32?的別名,占用 4 個字節的內存空間。它主要用于表示 Unicode 碼點,能夠處理包括中文、日文、韓文、表情符號等各種非 ASCII 字符。
    • 使用場景:當字符串包含非 ASCII 字符時,就需要使用?rune?類型。因為非 ASCII 字符在 UTF - 8 編碼下可能會占用多個字節,而?rune?可以完整地表示一個 Unicode 字符。

四.使用樣例

package mainimport ("fmt"
)func main() {// 布爾型var b bool = truefmt.Printf("布爾型: 值為 %v,類型是 %T\n", b, b)// 整數類型var i8 int8 = -128var i16 int16 = -32768var i32 int32 = -2147483648var i64 int64 = -9223372036854775808var u8 uint8 = 255var u16 uint16 = 65535var u32 uint32 = 4294967295var u64 uint64 = 18446744073709551615var by byte = 255var r rune = 'A'fmt.Printf("int8: 值為 %v,類型是 %T\n", i8, i8)fmt.Printf("int16: 值為 %v,類型是 %T\n", i16, i16)fmt.Printf("int32: 值為 %v,類型是 %T\n", i32, i32)fmt.Printf("int64: 值為 %v,類型是 %T\n", i64, i64)fmt.Printf("uint8: 值為 %v,類型是 %T\n", u8, u8)fmt.Printf("uint16: 值為 %v,類型是 %T\n", u16, u16)fmt.Printf("uint32: 值為 %v,類型是 %T\n", u32, u32)fmt.Printf("uint64: 值為 %v,類型是 %T\n", u64, u64)fmt.Printf("byte: 值為 %v,類型是 %T\n", by, by)fmt.Printf("rune: 值為 %v,類型是 %T\n", r, r)// 浮點類型var f32 float32 = 3.1415926var f64 float64 = 3.141592653589793fmt.Printf("float32: 值為 %v,類型是 %T\n", f32, f32)fmt.Printf("float64: 值為 %v,類型是 %T\n", f64, f64)// 復數類型var c64 complex64 = 3 + 4ivar c128 complex128 = 3 + 4ifmt.Printf("complex64: 值為 %v,類型是 %T\n", c64, c64)fmt.Printf("complex128: 值為 %v,類型是 %T\n", c128, c128)// 字符串類型var s string = "Hello, World!"fmt.Printf("字符串型: 值為 %v,類型是 %T\n", s, s)
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/72926.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/72926.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/72926.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【愚公系列】《高效使用DeepSeek》019-外語學習

??【技術大咖愚公搬代碼:全棧專家的成長之路,你關注的寶藏博主在這里!】?? ??開發者圈持續輸出高質量干貨的"愚公精神"踐行者——全網百萬開發者都在追更的頂級技術博主! ?? 江湖人稱"愚公搬代碼",用七年如一日的精神深耕技術領域,以"…

發布第四代液晶電視,TCL引領全新美學境界

在不斷革新的消費電子領域中,電視行業在視覺體驗上正面臨重要的美學挑戰。如何打破全面屏時代的物理束縛,將家居空間提升到“視覺無界”的層次,以及如何讓尖端技術更好地服務于影像沉浸感,成為行業關注的焦點。 3月10日&#xff…

劍指 Offer II 113. 課程順序

comments: true edit_url: https://github.com/doocs/leetcode/edit/main/lcof2/%E5%89%91%E6%8C%87%20Offer%20II%20113.%20%E8%AF%BE%E7%A8%8B%E9%A1%BA%E5%BA%8F/README.md 劍指 Offer II 113. 課程順序 題目描述 現在總共有 numCourses 門課需要選,記為 0 到 n…

【C++】STL庫面試常問點

STL庫 什么是STL庫 C標準模板庫(Standard Template Libiary)基于泛型編程(模板),實現常見的數據結構和算法,提升代碼的復用性和效率。 STL庫有哪些組件 STL庫由以下組件構成: ● 容器&#xf…

【問題解決】Postman 測試報錯 406

現象 Tomcat 日志 org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver.logException Resolved org.springframework.web.HttpMediaTypeNotAcceptableException: No acceptable representation HTTP狀態 406 - 不可接收 的報錯,核心原因 客…

第3節:AWK的特點和優勢

1 第3節:AWK的特點和優勢 AWK是一種功能強大的文本處理工具,具有以下特點和優勢: 1.1.1 簡潔性 AWK的語法簡潔明了,對于簡單的數據處理任務,通常只需編寫簡短的命令即可完成。例如,要從一個文本文件中提…

Flutter 打包 ipa出現錯誤問題 exportArchive

一、錯誤信息: Encountered error while creating the IPA: error: exportArchive: "Runner.app" requires a provisioning profile with the Push Notifications feature. Try distributing the app in Xcode: open /project/your_app/build/ios/archive/Runner.…

STC89C52單片機學習——第28節: [12-2] AT24C02數據存儲秒表(定時器掃描按鍵數碼管)

寫這個文章是用來學習的,記錄一下我的學習過程。希望我能一直堅持下去,我只是一個小白,只是想好好學習,我知道這會很難,但我還是想去做! 本文寫于:2025.03.20 51單片機學習——第28節: [12-2] AT24C02數據存儲&秒表(定時器掃…

Verilog-HDL/SystemVerilog/Bluespec SystemVerilog vscode 配置

下載 verible https://github.com/chipsalliance/verible的二進制包 然后配置 vscode

STM32使用HAL庫,模擬UART輸出字符串

測試芯片是STM32F103C8T6&#xff0c;直接封裝好了&#xff0c;波特率是 9600 MyDbg.h #ifndef __MYDBG_H #define __MYDBG_H #include "stm32f1xx_hal.h" #include <stdio.h> #include <stdarg.h>/*使用GPIO口 模擬 UART 輸出字符串 */ //初始化調試…

[工控機安全] 使用DriverView快速排查不可信第三方驅動(附詳細圖文教程)

導語&#xff1a; 在工業控制領域&#xff0c;設備驅動程序的安全性至關重要。第三方驅動可能存在兼容性問題、安全漏洞甚至惡意代碼&#xff0c;威脅設備穩定運行。本文將手把手教你使用 DriverView工具&#xff0c;高效完成工控機驅動安全檢查&#xff0c;精準識別可疑驅動&a…

HTML5響應式使用css媒體查詢

HTML 負責搭建頁面結構&#xff0c;CSS 負責樣式設計&#xff0c;并且通過媒體查詢實現了較好的響應式效果&#xff0c;能夠適應不同屏幕尺寸下面就是寫了一個詳細的實例。 CSS 部分 * {margin: 0;padding: 0;box-sizing: border-box; } * 是通配選擇器&#xff0c;會選中頁面…

洛谷P1434 [SHOI2002] 滑雪

P1434 [SHOI2002] 滑雪 - 洛谷 代碼區&#xff1a; #include<algorithm> #include<iostream> #include<cstring> using namespace std;const int MAX 105; int r, c; int arr[MAX][MAX], dp[MAX][MAX]; int xindex[4] {-1,1,0,0};//上下左右 int yindex[…

【操作系統】進程間通信方式

進程間通信方式 前言 / 概述一、管道管道命名管道 二、消息隊列三、共享內存四、信號量信號量概述互斥訪問條件同步信號 五、socket總結 前言 / 概述 每個進程的用戶地址空間都是獨立的&#xff0c;?般而言是不能互相訪問的&#xff0c;但內核空間是每個進程都共享的&#xff…

WPF 布局中的共性尺寸組(Shared Size Group)

1. 什么是共性尺寸組&#xff1f; 在 WPF 的 Grid 布局中&#xff0c;SharedSizeGroup 允許多個 Grid 共享同一列或行的尺寸&#xff0c;即使它們屬于不同的 Grid 也能保持大小一致。這樣可以保證界面元素的對齊性&#xff0c;提高布局的一致性。 SharedSizeGroup 主要用于需…

Netty源碼—2.Reactor線程模型二

大綱 1.關于NioEventLoop的問題整理 2.理解Reactor線程模型主要分三部分 3.NioEventLoop的創建 4.NioEventLoop的啟動 4.NioEventLoop的啟動 (1)啟動NioEventLoop的兩大入口 (2)判斷當前線程是否是NioEventLoop線程 (3)創建一個線程并啟動 (4)NioEventLoop的啟動總結 (…

前端項目中應該如何選擇正確的圖片格式

在前端項目中選擇正確的圖片格式是優化頁面性能、提升用戶體驗的關鍵步驟之一。以下是常見圖片格式的特點、適用場景及選擇建議&#xff0c;幫助你在不同場景下做出最優決策&#xff1a; 一、常見圖片格式對比 格式特點適用場景不適用場景JPEG- 有損壓縮&#xff0c;文件小- 不…

保姆級 STM32 HAL 庫外部中斷教學

1. 外部中斷概述 為什么用外部中斷&#xff1f; 當按鍵按下時&#xff0c;CPU 無需輪詢檢測引腳狀態&#xff0c;而是通過中斷機制立即響應&#xff0c;提高效率&#xff0c;適用于實時性要求高的場景。 關鍵概念 EXTI (External Interrupt/Event Controller)&#xff1a;ST…

Postman高級功能深度解析:Mock Server與自動化監控——構建高效API測試與監控體系

引言&#xff1a;Postman在API開發中的核心價值 在數字化時代&#xff0c;API&#xff08;應用程序編程接口&#xff09;已成為系統間交互的“神經網絡”&#xff0c;其質量直接影響用戶體驗與業務連續性。然而&#xff0c;傳統API測試面臨兩大挑戰&#xff1a; 開發階段依賴…

【程序人生】成功人生架構圖(分層模型)

文章目錄 ?前言?一、根基層——價值觀與使命?二、支柱層——健康與能量?三、驅動層——學習與進化?四、網絡層——關系系統?五、目標層——成就與財富?六、頂層——意義與傳承?外層&#xff1a;調節環——平衡與抗風險?思維導圖 標題詳情作者JosieBook頭銜CSDN博客專家…