こちらを読んでいただく前にまずjava初級編3がありますのでそちらを拝見ください⬇️⬇︎^^
continueとbreak
continue - 繰り返しの最初に戻って次の周回へ行く
break - 繰り返しを終了して次へ
int x = o;
while(true) {
//xが1の時ここへ戻る(printlnは実行されない)
x++;
if(x==1)continue;
System.out.println(x);
if(x==10)break;
}
//breakするとここへ
配列
String[] a = new String[3];
a[0] = "こんにちは";
a[1] = "おはよう";
a[2] = "さよなら";
for(int i = 0; i < 2; i++) {
System.out.pintln(a[i]);
一つの変数を複数の変数の列のように扱える
[]の中を添字と言う。 0から始まる。 添字の数を次元と言う
。
添字の指定に変数が使えるのでfor文と組み合わせると使い勝手がいい。
多次元配列
String[][] cell = new String[9][9];
a[0][2] = "歩";
a[5][5] = "飛車";
a[3][3] = "王将";
System.out.println(a[5][5]);
//飛車
配列変数をさらに配列にすると次元を増やす事ができる。
二次元配列は将棋やオセロの駒などの管理に使える。
右辺の評価
AND演算子は&&と&、OR演算子は||と|がありますが挙動に若干違いがあります。
(ANDで左辺がfalseだったり、ORで左辺がtrueの時)
右辺を見ないので早い(意図的に右辺を実行したい時に&と|を使う)
int a = 5;
if(true || a++ > 0) {
System.out.println(a);
}
//5がでる
if(true | a++ > 0) {
System.out.println(a);
}
//6が出る
関数(function)
数学での関数
f(x) = 3x+1
f(4) = 13
入力された値に対して決まった演算を行う。
プログラムでの関数
プログラムでの関数
public static int hoge(int x) {
return (int) Math.pow(x,2)+3*x+1;
System.out.println(hoge(4));
値(引数) を渡すと処理を行い、値(返り値)を返す
呼び出された時に実行される
プログラムでは引数がない関数もある
返り値はreturnで返す(javaの場合)
publicやstaticについてはまた今度、、、
メソッドと関数
クラスの中に書いてある関数はメソッドと言います。(すごく大雑把な言い方ですが、)
クラス自体の話はまた今度、、
javaではクラスがあってその中にプログラムを書くのでメソッドと呼びます。
メソッドの書き方
メソッドの定義
public static int hoge(int x) {
return (int)Math.pow(x,2)+3*x+1;
}
返り値の型 メソッド名(引数の型 引数名、引数の型 引数名)
引数が複数ある場合カンマで区切ってかく
引数がない場合何も書かない hoge()
返す値がない場合、返り値の型はvoidとなる
書く場所はmainメソッドの外、クラスの中! (mainもメソッドです)
とりあえず今はstaticをつけよう(今後解説します)
メソッドの呼び出し方
メソッドの呼び出し
hoge(3);
int n = hoge(4);
メソッド名(引数)で呼び出し
引数が複数ある場合はカンマ区切りで書く
渡す引数の型は定義と同じにする
返り値を変数に代入したりするとさらに計算に使うことも可能。
メソッドを作るメリット
同じ作業をまとめて実行できる
例⬇︎
洗濯物を入れる➡️洗濯物を動かす➡︎洗濯物を干す
まとめて"洗濯する"と言うだけで済む
何度も実行する時に便利(動作を変更するときに楽)
スコープがメソッドの中だけの変数を使えば他の部分に影響を与えない。
メソッドの中と外では影響する範囲が違います。
public static int hoge(int x) {
x* = 2;
return x;
}
public static void main(String[] args) {
int a = 3;
int x = 10;
System.out.println(hoge(a)); //6
System.out.println(a); //3(intの場合メソッドの中に計算は外側に影響しない)
System.out.println(a); //10(hogeの中のxとmainの中のxは別物)
}