91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

go語言求字符串長度的方法

發布時間:2020-12-30 09:26:50 來源:億速云 閱讀:568 作者:小新 欄目:編程語言

小編給大家分享一下go語言求字符串長度的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

go語言求字符串長度的方法:1、使用“len()”函數計算ASCII字符串長度;2、使用“utf8.RuneCountInString()”函數計算Unicode字符串長度。

Go語言計算字符串長度——len()和RuneCountInString()

Go 語言的內建函數 len(),可以用來獲取切片、字符串、通道(channel)等的長度。下面的代碼可以用 len() 來獲取字符串的長度。

tip1 := "genji is a ninja"
fmt.Println(len(tip1))
tip2 := "忍者"
fmt.Println(len(tip2))

程序輸出如下:

16
6

len() 函數的返回值的類型為 int,表示字符串的 ASCII 字符個數或字節長度。

輸出中第一行的 16 表示 tip1 的字符個數為 16。

輸出中第二行的 6 表示 tip2 的字符格式,也就是“忍者”的字符個數是 6,然而根據習慣,“忍者”的字符個數應該是 2。

這里的差異是由于 Go 語言的字符串都以 UTF-8 格式保存,每個中文占用 3 個字節,因此使用 len() 獲得兩個中文文字對應的 6 個字節。

如果希望按習慣上的字符個數來計算,就需要使用 Go 語言中 UTF-8 包提供的 RuneCountInString() 函數,統計 Uncode 字符數量。

下面的代碼展示如何計算UTF-8的字符個數。

fmt.Println(utf8.RuneCountInString("忍者"))
fmt.Println(utf8.RuneCountInString("龍忍出鞘,fight!"))

程序輸出如下:

2
11

一般游戲中在登錄時都需要輸入名字,而名字一般有長度限制。考慮到國人習慣使用中文做名字,就需要檢測字符串 UTF-8 格式的長度。

ASCII 字符串長度使用 len() 函數。

Unicode 字符串長度使用 utf8.RuneCountInString() 函數。

以上是“go語言求字符串長度的方法”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

富川| 维西| 新沂市| 大渡口区| 伊春市| 石首市| 化德县| 胶南市| 新龙县| 阳春市| 咸阳市| 吉安市| 阳泉市| 十堰市| 鹿邑县| 新闻| 琼结县| 盘锦市| 凤翔县| 朝阳区| 晋宁县| 河东区| 南康市| 宜宾市| 原平市| 怀仁县| 金山区| 通许县| 吴川市| 双牌县| 博爱县| 石首市| 彰武县| 玉屏| 新津县| 驻马店市| 巴彦淖尔市| 综艺| 普宁市| 行唐县| 靖西县|