A Tour of Go をやる! – その14 「Type conversions」 1は1.0になれる! 【Go言語/A Tour of Go】

2018年10月1日GoA Tour of Go,Goのお勉強,Go言語,,型変換,変数Go,A Tour of Go,Goのお勉強,Go言語,,型変換,変数

記事ヘッダー_Type_conversions

「A Tour of Go をやる!」シリーズの第14回目。
今回も変数…というか、型変換な話です。

今回進めるページ「Type conversions」

今回進める「A Tour of Go」のページはこちら。

タイトルの「Type conversions」とは?

Type (型)の conversions (変換) ですな。
ここでいう Type は int や string などを指す データ型(Data type)のこと。

言語仕様の確認

続いて言語仕様をチェック。
下記は型変換の仕様が説明されている「Conversions」から引用。

A conversion changes the type of an expression to the type specified by the conversion. A conversion may appear literally in the source, or it may be implied by the context in which an expression appears.

An explicit conversion is an expression of the form T(x) where T is a type and x is an expression that can be converted to type T.

変換により、式のタイプが変換で指定されたタイプに変更されます。変換は、文字通りソースに表示される場合もあれば、式が表示されるコンテキストによって暗示される場合もあります。

明示的な変換は、T(x)形式の式です。ここで、Tは型であり、xは型Tに変換できる式です。(by Google Translated.)

https://golang.org/ref/spec#Conversions
Conversion = Type "(" Expression [ "," ] ")" .

型変換の基本として T(x) な形で型変換が出来るらしい。
ちなみに T は 型 のことで x は 式 のこと指すと書いてある。

型変換の構文

型変換の構文 T(x) を詳しく見てみる。

// 構文 T(x)
[型] ( 式 )

// e.g.
var zorome int = 666           // zorome を int型 で宣言
var omen uint = uint( zorome ) // T(x) の形で uint型 に変換
                ^^^^^^^^^^^^^^

さて、型変換の基本がわかったところで、今回のサンプルプログラムを眺めます。

異なる型で値の代入を行うと…

怒られる…

サンプルプログラムを見てみる。

「Type conversions」のサンプルプログラムを見てみます。
お題に関係する箇所にはコメント打ってます。

処理の内容は、int型 の変数を基に何度か計算と型変換を行い、最後に各変数の中身を出力している。
型変換は何れも T(x) の構文が使用されている。

さいごに

ということで、型変換を覚えました。
Go言語では暗黙的な型変換といったことができないようですので、コーディングでは常に気を配らないとですね。

まぁ、実際のところは忘れたとしても構文チェックで引っかかるから大丈夫さぁ…_(:3」∠)_タブンナ

ではまた次回~٩( 'ω’ )و

「Go言語のお勉強」インデックス

このシリーズについて

「A Tour of Go」を題材にした記事は現在書き直し中…。_(:3」∠)_
ほとんどサボりが原因で尻切れとなっていたシリーズですが、最近になってようやく続きを書きたくなり再開をしようと思ったんです。が、古い記事を見返すとデータ・フォーマットが古かったり内容が分かり難かったりに気づきまして、、、この際だからと最初の記事から書き直しをすることになりました…