【VB.Net】データ型とは
前回データ型の紹介をしました。
ではなぜ、データ型を決めてあげないといけないのでしょうか?
それは簡単で、コンピュータが識別できないからです。もっと詳しく言うと、コンピュータは「いったいどういうなんている名前の変数を用意すればいいのかわからないから」です。
コンピュータは言われたことしかできません。人のように、察する・行間を読む、といったようなことはできません。
さすが天下のコンピュータです。
なので、優しく・丁寧に「どのような型のなんていう変数を使いたいので、定義します」と言ってあげるのです。
それを変数宣言といいます。(前回のデータ型の記事でもちらっと紹介しましたね。)
では、今回は整数型を扱える変数を例に挙げて勉強したいと思います。
例えば、小数点以下を使わないような数字をプログラム内で使っていきたいなあって時は、変数宣言をするときに整数型を指定してあげます。
Dim x As Integer
このxという変数はどのような値が設定できるのでしょうか?下にいくつか例をあげます。
ではなぜ、データ型を決めてあげないといけないのでしょうか?
それは簡単で、コンピュータが識別できないからです。もっと詳しく言うと、コンピュータは「いったいどういうなんている名前の変数を用意すればいいのかわからないから」です。
コンピュータは言われたことしかできません。人のように、察する・行間を読む、といったようなことはできません。
さすが天下のコンピュータです。
なので、優しく・丁寧に「どのような型のなんていう変数を使いたいので、定義します」と言ってあげるのです。
それを変数宣言といいます。(前回のデータ型の記事でもちらっと紹介しましたね。)
では、今回は整数型を扱える変数を例に挙げて勉強したいと思います。
例えば、小数点以下を使わないような数字をプログラム内で使っていきたいなあって時は、変数宣言をするときに整数型を指定してあげます。
Dim x As Integer
このxという変数はどのような値が設定できるのでしょうか?下にいくつか例をあげます。
例 | 値 | 結果 |
---|---|---|
1 | x = 10 | ? |
2 | x = -3 | ? |
3 | x = 10.5 | ? |
4 | x = "11" | ? |
5 | x = "こんにちは" | ? |
例1,例2は小数点を使用したない整数でありますのでOK◎です!
例3の小数点以下のある数値はどうでしょうか?
これは、△です。ここで指定したInteger型は基本的に小数点以下を切り捨た状態で数字が設定されます。(「基本的に」っていうところがミソなんです)
では例4ですが、、これは例1~3と何が違うでしょうか?一見数字にみえてOK??と思われそうですが・・・
ちがいはこの「””(ダブルクオーテーション)」なんです。この「””」はこれに挟まれたものを文字列としてみますよ!っていう目印なのです。
つまり「11」と書いていますがこの「11」は数字の11ではなく、文字列としての「11」になってしまうのです。
一応VB.Netはやさしさの塊で、「あっ、ワンチャン文字列の「11」って数字の11なのでは??」と機転を利かせてキャスト(型変換)をしてくれます。
ですが、基本的にこのようなプログラムの記載方法はマナー違反となりますし、他言語では厳しく怒られたりすることがあるのでやめましょう。
最後の例5では、他とは明らかに違いますよね。整数型の変数に「こんにちは」という文字列を設定してくれと言っています。
これは明らかに、NG×です。エラーが出て終了です。数字の変数に数字ですらないものを入れることはできません。例4のようにどうこうという次元の話ではありません。
ということで例に挙げた結果はこちらの表のとおりです。
例 | 値 | 結果 | 備考 |
---|---|---|---|
1 | x = 10 | ◎ | |
2 | x = -3 | ◎ | |
3 | x = 10.5 | △ | 小数点以下の数値が悪さをすること有 |
4 | x = "11" | × | マナーとしてこの記載は避けましょう |
5 | x = "こんにちは" | × | そもそも設定できません |
今回の例で挙げたIntegerは小数点以下があると不思議な動きをします(これは機械の計算が関わってくる話なので割愛します)。なので、小数点以下を扱う数字をいじり倒したいときには、それにあった器(データ型の変数)を用意して使用してあげてください!
(Dim y As Double など。)
変数のデータ型っていうのは、コンピュータが変数を正しく認識して保持するためにとても必要な概念なんです。
奥が深いですね~