このブログの目的
- アウトプット嫌いの性格改善
- 文章を書くリハビリ
- 1日30分~1時間位、考えたことを書く
- 毎日だと挫けるので、週に4日以上とする
- 文章を書くこと自体が目的なので、内容の精度は気にしない
- 従って、的外れなこと、調べれば分かるような疑問の垂れ流し、なども可とする
- 勿論、調べたり推敲して書いても構わない
- その他、思いついたら目的は適宜追加する
■
飼い猫が病気。
今日やったこと:JAVA無料分復習まとめ
System.out.println(); ()の中が出力
コメントは//
文字列と数字の扱い、計算、演算子は他と同じ
連結は+
変数の定義 変数名はキャメルケース
データ型
String 文字列
int 整数
double 小数
int number; ←変数の定義
number = 3; ←代入
String name = "John"; ←変数定義と代入同時でも(=変数の初期化)
int number = 4;
number = 5; ←値の更新時、データ型つけない
cf.
int number = 4;
int number = 5; ←同じ名前の変数は定義できないのでエラー
自己代入 他とやり方同じだけど一応
X = X +7;
省略
X += 7;
1の増減なら X++; X--;
「+」などの操作は同じデータ型同士のみ
型の違うものを演算するときは型変換が必要
Javaでは自動変換と手動変換がある
(下図)String型とint型を足すと、int型が自動でString型に変換
System.out.println("ボブは" + 45 + "歳です");
int型同士の計算は、結果もint型に
double型同士の計算は、結果もdouble型に
System.out.prinln(5 / 2); ←結果は「2」
System.out.println(5.0 / 2.0); ←結果は「2.5」
int型とdouble型の計算...int型がdouble型に自動変換され、結果はdouble型
System.out.println(5.0 / 2); ←結果は「2.5」
強制型変換=キャスト
int number1 = 13;
int number2 = 4;
System.out.println((double)number1 / number2);
←number1の値がdoubule型に変換される
------------------------------
真偽値のデータ型 boolean ブート演算子
if文 他の言語と同じ
if (number < 10) {
System.out.println("10より小さい");
}else if(number < 20){
System.out.println("10以上、20より小さい");
}else{
System.out.println("20以上");
}
switch文も同じ
switch (number % 5) {
case 0:
System.out.println("大吉です");
break;
case 1:
System.out.println("中吉です");
break;
case 4:
System.out.println("凶です");
break;
default:
System.out.println("吉です");
}
while文 繰り返し処理 他と同じ
int i = 1;
while (i < 10) {
if (i % 5 == 0) {
break;
}
System.out.println(i);
i++;
}
for文
for (int j = 1; j < 10; j++) {
if (j % 3 == 0) {
continue;
}
System.out.println(j);
}
配列
String[] names = {"ダニー", "グレッグ", "越前"};
// インデックス番号が0の要素を出力してください
System.out.println(names[0]);
※変数の上書き names[0] = "にゃんこ";
※変数の追加できない × names[3] = "にゃんこ";
配列の繰り返し処理
// for文を用いて、「私の名前は◯◯です」と出力してください
for (int i = 0; i < names.length; i++) {
System.out.println("私の名前は" + names[i] + "です");
}
}
配列用の特別な構文(拡張for文)
for(String name : names){
System.out.println("私の名前は" + name + "です");
}
プログラミングのお勉強:016日目
やったこと:PHP無料レッスン復習後半
繰り返しの処理(ループ処理)
for文
for($i = 1;$i <= 100;$i++){
echo $i;
}
$i=1 初期値 これから始まる
$i<=100 どこまで繰り返すか
$i++ 1週ごとの変化の割合
while文
$i = 1;
while($i <= 100){
echo $i;
$i++; ←これがないと無限ループになる
}
break文
現在のループを強制的に中断する命令
for, while, foreachなどの繰り返し文の中で利用
if文などの条件文と組み合わせて利用するのが一般的
for($i = 1; $i <= 10;$i++{
if($i > 5){
break;
}
echo $i;
}
1から始まって、10までループ、1ずつ増える
ただし5を超えたら終了(break)
continue文
現在の周だけをスキップし、ループそのものは継続
for($i = 1; $i <= 10;$i++{
if($i % 3 == 0){
continue;
}
echo $i;
}
1から始まって、10までループ、1ずつ増える
ただし3の倍数になったらその周回は飛ばして次に(continue)
foreach文
配列・連想配列に対して、先頭のデータから順に繰り返し処理を行う
「as」の後ろの変数に、ループの度にデータが先頭から順に代入
foreach(配列 as キー変数 => 値変数){
繰り返したい処理;
}
$data = array('東京','大阪','京都');
foreach($data as $value){
echo $value;
}
//結果:東京 大阪 京都
<?php
$scores = array('数学' => 70, '英語' => 90, '国語' => 80);
foreach($scores as $key => $value){
echo $key.'は'.$value.'点です。';
}
?>
//結果:数学は70点です。英語は90点です。国語は80点です。
関数
あるまとまった処理を行い、値を返すもの
()の中に与える値を「引数」という
組み込み関数
strlen 文字列の文字数を反す ストリングレングス
echo strlen('xxxxxxxx')
//結果:8
count 配列の要素の数を返す
$data = array('東京','大阪','京都');
echo count($data);
//結果:3
rand 1つ目の引数、2つ目の引数の間のランダムな整数を返す
echo rand(1,4);
関数の定義
function 関数名(){ 処理 }
「関数名()」というように()をつけて呼び出す
<?php
// 関数helloを定義
function hello(){
echo 'Hello, world!';
}
// 関数helloを呼び出し
echo hello();
//結果: Hello, world!
// 関数printRectangleAreaを定義 $height,$widthが仮引数
function printRectangleArea($height,$width){
echo $height*$width;
}
// 引数を(5, 10)としてprintRectangleAreaを呼び出し
echo printRectangleArea(5,10);
//結果:50
?>
関数は値を「返す」 この値=戻り値
戻り値は「return」で指定
function getSum($num1,$num2){
return $num1 + $num2; ←戻り値
}
$sum = getSum(1,3);
echo $sum;
//結果:4
フォームを作りたい時は、HTMLの<form>タグ
action属性にはデータを渡す先のURLを指定
method属性は値の送信の方法 「get」と「post」のどちらか
getの場合は送信される値がURLに表示、postの場合はURLに表示されない
テキストボックスをつくるにはHTMLの<input type="text">
name属性は入力された値に名前を付ける 値を取得するときに使う
<input>タグは閉じタグが必要ない
改行を含む文章のテキストボックス HTMLの<textarea>タグ
<textarea>タグは閉じタグが必要
送信ボタン <input type="submit">
value属性に指定された値がボタン上に表示
<form action ="送信先url" method ="post">
<input type="text" name="email">
<textarea name="content"></textarea>
<input type="submit" value="送信">
</form>
フォームで送信した値を受け取るには「$_POST」を使用
「$_POST」は連想配列になっている
[ ]の中に、のname属性に指定した値を入れると、それぞれの送信した値を受け取る
<?php echo $_POST['email'] ?>
セレクトボックス <select>タグの中に<option>タグを並べる
<option>タグの中身が選択肢として表示
<select>タグに$_POSTで受け取るためのname属性を指定
<option>タグのvalue属性が送信される値
<select name="choice">
<option value="a">選択肢A</option>
<option value="b">選択肢B</option>
<option value="c">選択肢C</option>
</select>
//選択肢Aを選ぶと
<?php echo $_POST['choice'];
//結果:a
繰り返し処理と変数展開を用いて多数のoptionタグを作れる
変数展開を用いる際はダブルクォーテーションで囲む
プログラミングのお勉強:015日目
PHP無料レッスン復習途中まで。
PHPはHTMLに埋め込んで使用。
<?php ~ ?>の部分がHTMLに変換された上で表示。
<?php
//ダブルスラッシュでコメント
echo 'ここが出力';
echo '文字列はシングルかダブルクォーテーション';
echo '文末はセミコロン';
?>
変数 頭に「$」記号
<?php
$name = 'Bob';
echo $name;
?>
二語以上の変数名はキャメルケース
変数の値の更新
省略の仕方は他と同じ +=とか*=とか
足す(引く)数字が1の時だけ、更に省略可能
$x = 3; の時、
echo ++$x; の出力は4 その行の実行前に1足される
echo $x++; の出力は3 実行後に1足されて$x=4になる
連結 記号「.」
<?php
$lesson = 'PHP'
echo $lesson.'入門';
?>
変数の文字列の更新にも使える
$name = 'にんじゃ';
$name .= 'すれいやー';
で、$nameは「にんじゃすれいやー」になる
変数展開
echo "こんにちは、{$name}=サン";
if文 書き方は他と同じ
演算子 < <= > >= == != && ||
「!」は条件否定の演算子
if(!($x == 10)) 「$x == 10」がtrueならfalseになる
if($level > 10){
echo '古強者';
}elseif($level > 5){
echo '中堅';
}else{
echo '新人';
}
switch文
<?php
// この下で$numに好きな数字を代入してください
$num = 12548;
$remainder = $sum % 3;
switch($remainder){
case 0:
echo '大吉です。';
break;
case 1:
echo '中吉です。';
break;
case 2:
echo '小吉です。';
break;
default:
echo '凶です。';
break;
}
?>
配列
基本構文は「$配列名 = array(値1, 値2, ・・・);」
値には先頭から0, 1, 2, ・・・と順に「インデックス番号」が割り振り
値を取り出すには$配列名[インデックス番号]
配列の末尾に値を追加するときは「$配列名 = 値;」
すでに存在するインデックス番号を指定すると、配列の値を上書き
$name = array('レッドゴリラ','アイボリーイーグル','ブラックドラゴン');
echo $name[1];
//結果:アイボリーイーグル
$name = 'パープルタコ'; 配列の末尾に値を追加
$name[2] = 'シャドウヴィーヴ'; ブラックドラゴンがシャドウヴィーヴに上書き
連想配列
個々の要素を管理するのにインデックス番号ではなく、「キー」と呼ばれる文字列などの値を指定
「$配列名 = array('キー名' => '値1', ・・・);」といったように、「=>」を用いてキーと値をセット
連想配列の値の取り出し 「echo 配列名[キー] 」
連想配列にデータを追加 「配列名[キー] = 値;」
$user = array(
'name' => 'unko',
'age' => 14,
'gender' => 'male'
);
echo $user['name']
//結果:unko
$user['level'] = 'beginner';