今までの訓練でつけてたメモ無編集で出してます。
読みづらいぞ!むしろ読むな!(ぇ
10/25
System.out.printf(“%s”, “おはよう”);
”%s”や”おはよう”←引数=メソッド内で扱う数値
/*コメントアウト*/
//コメントアウト
シングルクォーテーション→文字(char型)
ダブルクォーテーション→文字列
文字列の連結に+を使う
変数の命名規則
・数字から始まってはいけない。
・英語で書くべき。
・記号は使ってもよいが使われている記号(+,-など)は使えない
Pascal(パスカル)形式
各単語の頭文字を大文字で記述します。基本的には単語の接続には”-“や”_”は使いません。ex.”BackGroundColor” “WindowsLiveMessenger”
Camel(キャメル)形式
前述のPascal形式に似ているが、最初の単語の最初の文字は小文字に。こっちも基本的には単語の接続には”-“や”_”は使いません。
ex.”backGroundColor” “windowsLiveMessenger”
アンダースコア記法
単語をアンダースコアでつなぐ記法 ex.user_name
10/29
16進数
123456789abcdef
ff→255 RGB値で使われる(ff|ff|ff=8ビット×3=24ビットカラー)
10進数を2進数に変換する方法
2で割り続けて余りを並べる
一番近い2の乗数ひく1に対してその10進数を引き続ける。引ける桁が0。
362→101101010
String = 文字列
基本型=スタックのみ使う
参照型=スタック(場所)からヒープ(中身)を参照する
PCメモリの分類
http://itpro.nikkeibp.co.jp/members/NBY/techsquare/20030117/1/
スタック・・・コンパイラやOSが自動的に割り当て、解放を行う
ヒープ・・・アプリケーションが、メモリが必要になった時に確保し、不要になったら解放するという処理を自分自身で行う必要がある
booleanとは・・・基本型。trueかfalseが入る。
boolean b = (5<1);
System.out.println(b);
とするとfalseが出力される。
キャスト・・・型変換。大きい型を小さい型に変換するときに使う。Javaは小さい型から大きい型に対しては厳格では無い。(エラーせず変換する)
long l = 100;
int a = (int)l;
↑long型のlをint型に変換している。
ラッパークラス(P71)・・・基本型に対応した参照型
boolean→Boolean
int→Integer など
~1~.parse~2~(~3~)
1・・・変換したいラッパークラス(Integer)
2・・・変換したい基本型。頭は大文字。(Int)
3・・・変換したい文字列(変数 String str=100;)
Integer.parseInt(str);
この処理は参照型(Stringなどの文字列)から基本型(intなどの数値)に変換する際に利用する。
キャストでは処理できないのでこの処理を用いる。
float型は宣言する時に注意する。
小数点のある数値を代入すると、Javaが自動的にdouble型と解釈するため、明示的にfloat型であると記す必要がある。
float f = 5.6;→×
float f = 5.6f;→○
double型は16進数対応できる。
main(String[] args) {
mainメソッド・・・String[] argsのargsは変数。引数という意味の英語。Stringは引数。[]は配列。
コマンドでjava ~~~~ 100 と打つとargsの1番目に100が代入される。
args[0]=100
10/30
条件式
if文
if(条件式){処理(条件式がtrueの場合行う);}
ex.
int Age = 18;
if(Age != 18){
Aの処理
}
この場合条件式に当てはまらないため、Aの処理は行われない。
乱数
Math.random()→0~0.99999…の乱数を返す。
ex.0~100の場合
(Math.random() * 101)+0
0~100の101通りを呼び出すために100ではなく、101をかける
最後の+0の値を変化させることによって最小値を変化させる。
1にすれば1~101になる。
一般式としては、
(int)(Math.random() * (x+1)となる。
if…else文
else=さもなくば→ifで無い場合処理される
if
沢山の条件分岐をさせる場合に使う
「または」、「かつ」について(P95~)
|| ←かつ
ex. a >= 0 || a <=100
aが0より大きい、かつaが100より大きい場合
&& ←または
ex. a == 20 && a >= 100
aが20、またはaが100より大きい場合
10/31
switch文
使える型はint,char,byte,shortのみ。
break;しないと次のcaseの処理も行ってしまう。
()の中のcaseを選択する。
ex.switch(2-1)→case 1を選択
for文
繰り返し処理
for(int i = 0; i < 3; i++)
for(変数の初期化;条件式;繰り返し毎に実行する式) {
繰り返したい処理,
}
11/01
スコープ(有効範囲)→P142~
for文の中でint iと変数宣言した場合、for文の中でしか使えないため、for文の外でiを利用しようとしても使えない。有効範囲の外だからである。
ex.コンパイルエラーになる記述
for (int i = 0;i < 3; i++) {
System.out.println(i);
}
System.out.println(“i = “ + i);
※赤字で示した部分が変数iの有効範囲となるため、
for文終了後の次のプリントラインでのiの呼び出しが出来ずエラーとなる
二重のfor文→P138~
for文の中に別のfor文を入れる
ex.forの入れ子
for (int i = 0; i < 10; i++) {
System.out.print(i + “:”);
for (int j = 0; j < i; j++) {
System.out.print(“*”);
}
System.out.println(“”);
}
外側のfor文が実行されると次に内側のfor文が実行される。
外側をfori、内側をforjとした場合のフロー
→fori i=0
→fori i=1→forj j=0(*)
→fori i=2→forj j=0(*)→forj j=1(*)
→fori i=3→forj j=0(*)→forj j=1(*)→forj j=2(*)
→fori i=4→forj j=0(*)→forj j=1(*)→forj j=2(*)→forj j=3(*)
以下iが9(10以下)になるまで処理される。
実行結果は
0:
1:*
2:**
3:***
4:****
となる。
eclipseの機能
ブレークポイントでデバッグ
1.指定行の左側のバーをダブルクリック
2.デバッグボタンを押す
変数の値が右上に表示される
3.再生ボタンを押す
変数の値がその行の指示にしたがって変化する
for文だと1回押すと1回動く(1周)
2回押すと2周目
11/5
While文
While(条件式){
処理;
}
条件式がtrueの間処理を繰り返す。
forとwhileの違い(P153~)
for:初期化→条件式→次の一歩→処理→条件式→次の一歩→処理
while:条件式→処理→条件式→処理(条件式が満たされるまで)
do-while文
do {
処理;
} while(条件式);
処理→条件式→処理(trueの場合)
処理→処理(カウント)→条件式→処理→処理(カウント)→条件式
先に一度処理を行うため、処理を必ず一回はする文
break
繰り返しの中断を行う
if(条件式){
break;
}
条件式が満たされれば繰り返しを中断する(外側にforやwhileがある状態で)
ただし、breakを内包している一個外の繰り返し文にしか適用されない。
内包している繰り返し文全体(二重for文の一つ目のforなど)に適用する場合は、
break outer;を使う。
Continue
while(条件式){
処理A;
if(i == 7){
continue;
処理B;
}
}
もしiが7ならば処理Bを行わず、whileに帰る(条件判定のやり直し)
11/7
クラスの構成について
class 宣言
変数宣言 1
変数宣言 2
メソッド宣言 main {
メソッドで使う変数宣言 1
メソッドで使う変数宣言2
処理 1
処理 2
メソッド宣言 2 {
メソッドで使う変数宣言 1
メソッドで使う変数宣言2
処理 1
処理 2
}
メソッド宣言 3 {
}
Math.random()の構成について
Mathはクラスでrandomはメソッド。つまり、別の場所からクラスを呼び出して利用している。
JAVAを書くとは→クラスを書くということである。
たくさんのクラスを作る、ユニット化することでパーツを呼び出して必要なものだけでプログラムを構成し、多様なプログラムに流用、対応できる
クラスで変数宣言するメリット(メソッド内ではない)
・他のクラス内でも流用できる
staticとは
ex.static int weight;
どこでも使える変数にするための記述
readLineについて(P65~)
11/8
配列
int[] 名;
int[] 名 = new int[];
newとは→コンピューターのメモリに記憶させる為の演算子
11/12
二次元配列(復習)
ex.
int[][] tens = {
{ 63, 90, 75, 45, 81},
{ 85, 100, 95, 80, 90},
{ 100, 100, 100, 100, 100},
};
x(横)軸だけの配列ではなく、y(縦)軸も加わった配列。2軸になっているため2次元。
上記配列だとtens[1][3]は80となる。
配列の要素を巡る拡張for文(P229~)
他言語ではfor~each文
for(要素の型 変数名 : 配列) {
変数を使った処理;
}
0~length-1番目まで処理してくれる
コメント
No Trackbacks.