Lesson3 変数

①変数とは

変数は、型を指定し、名前をつけて、数値を代入できる「入れ物」。この入れ物を使いフィールド内に数値を保管する。名前の部分を識別子と呼ぶ。

例データ型と名前を指定「宣言」

int num1

flort num2

long num3

データ型 名前

 

②代入と初期化

宣言したデータ型に数値を代入する。型を指定すれば、整数や実数も代入することができる。

※整数とは自然数に0と負の数を入れたもの。実数とは整数に小数値を加えたもの。

 

代入には「=」を使う。

int num1;

num1 = 5;

上記の2行のコードはnum1に5を代入するコード。

「宣言」と同時に数値を代入する事もできる。

int num1 = 5;

宣言と同時に代入すると1行で記述することができる。これを「初期化」という。

 

③キーボードからの文字列を入力

キーボードからの入力にはBufferedReaderクラスを使用する。

import java.io.※;

class Sample1

{

     public static void main(String args ) throws IOException

{

BufferedReader br =

new BufferedReader(new InputStreamReader(System.in,"SJIS"));

String str1 = br.readLine();

}

 

 上記のメゾットで、キーボードから文字または文字列を  str1 に代入できる。str1は、String型であるので、キーボードで入力された型は「文字または文字列」であって、変数ではない。日本語の入力に対応するために ,"SJIS"を追加する。

 

④文字列を数値に変換

下記のメゾットでString型の文字列を数値に変換できる。※③のstr1を変換する場合

int num1 = Integer.parseInt( str1 );

int以外にもより大きい整数や実数にも変換できる。

double num2 = Double.parseDouble( str1 );

 

 さらに、第2基数を指定することにより、指定した進数ベースで、10進数に変換し代入する事ができる。返ってくる値はすべて10進数になる。

例えば

string str1 = 11001000;

string str2 = c8;

int nam1 = Integer.parseInt( str1 ,2 );

int nam2 = Integer.parseInt( str2 ,16);

 この場合、カッコ内の最後の,2と,16が第2基数を示している。nam1は、str1を2進数で読み取って10進数で代入する。nam2は、str2を16進数で読み取って10進数で代入する。よってnam1とnam2の数値は200となる。

※進数とは・・・

2進数とは、0と1だけで表記される数値。

3進数とは、0と1と2だけで表記される数値。

4進数とは、0と1と2と3だけで表記されている数値。

・・・

11進数とは、0から9とaで表記されている数値。

16進数とは、0から9とaからfで表記されている数値。

 

⑤変数に新たな数値を代入

一度、格納した変数に新たな数値を代入することができる。

例えば、

class Sample1

{

      public static void main(String args)

      {

      int num1 = 5;

         System.out.println( num1 );

      num1 = 10;

         System.out.println( num1 );

        }

}

この場合、1行目に5が表記され2行目には10が表記される。

プログラムは上から下へ処理されるので、下の段に代入の記述をすれば、「int num1」の中身を、次々に入れ替えられる。

この様にプログラムにおいての「 = 」は、等しいという意味ではなく、コンピュータへ代入を指示している記号である。