Go言語で文字列は何を意味しますか?

王林
リリース: 2020-12-24 17:07:56
オリジナル
4692 人が閲覧しました

Go 言語では、string は文字列です。その本質は [[]byte] なので、相互に変換できます。バイト配列の長さが文字列の長さになります。文字列の値が決定されると、変更することはできません。

Go言語で文字列は何を意味しますか?

#この記事の環境: Windows 10 システム、Go 1.11.2 バージョン、この記事はすべてのブランドのコンピューターに適用されます。

(学習ビデオ共有:

プログラミングビデオ)

Go 言語の本質 String は [] バイトなので、相互に変換できます。バイト配列は文字列の長さです。

Go言語で文字列は何を意味しますか?

結果:

a=H 
b=e 
str=Mello,World
ログイン後にコピー
ログイン後にコピー

文字列の値を指定すると、その値を変更することはできません。変更したい場合は、まず文字列をスライスに置き換えます。

//当试图去修改str时候
str[0] = 'M'
ログイン後にコピー

次のエラー メッセージが表示されます:

Go言語で文字列は何を意味しますか?

Go言語で文字列は何を意味しますか?# 結果:

a=H 
b=e 
str=Mello,World
ログイン後にコピー
ログイン後にコピー

rune は utf8 文字を表します、ルーン文字は 1 つ以上のバイトで構成されます。

ルーンと文字列の長さの違いは何ですか?次の例を参照してください:

Go言語で文字列は何を意味しますか?結果:

strLen=12 
str2ByteSlice=12 
str2RuneSlice=8
ログイン後にコピー

結果から、

1 (長さ) がわかります。文字列とバイト スライス 長さは一貫しています

2。文字列の長さはルーン スライスの長さよりも長く、これは中国語の文字が複数のバイトを占める必要があることを意味します (ここでは 3 です)。 str2RuneSlice = 8

の結果が得られます。次に、このルーン スライスを走査し、次のコードを追加します。

Go言語で文字列は何を意味しますか?Result:

str2RuneSlice[0]=H 
str2RuneSlice[1]=e 
str2RuneSlice[2]=l 
str2RuneSlice[3]=l 
str2RuneSlice[4]=o 
str2RuneSlice[5]=, 
str2RuneSlice[6]=世 
str2RuneSlice[7]=界
ログイン後にコピー

関連する推奨事項:

golang チュートリアル

以上がGo言語で文字列は何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート