イディオムとは、いろいろなコードの書き方がある中で先人たちが選んだ一番いい方法らしい。
初期化
var age = 25
ローカル変数の初期化
var langs = new string[] { "C#" ,"VB","C++",};
最後コンマを付けてもつけなくても通るけど、付けたほうが追加が簡単だからよい
オブジェクトの初期化
判定
if ( age <= 19) {} 年齢は19以下
× if ( 19 >= age) {} 19が年齢以上か
if(MinValue <= num && num <= MaxValue){
bool
if( isStart ){}
× if( isStart == true ){}
私はわかりやすい下のほうが好きなのに。。。
returnするときは式を直接
return a==b;
return true;
繰り返し
配列のfor文を回すときはiから
for(var i=0,i<=5,i++){
item[i]
}
配列やリストのすべての要素を回してすべての要素に対して同じ処理をするならforeach
ループを抜けるときは
if(line.Length>40)
break;
ループから抜けると同時に呼び出し元のメソッドに戻る場合はreturn
三項条件演算子
条件演算子
var num = isStart ? 1 : 0;
trueの時は:の左側、falseの時は右側が入る。
null合体演算子
var message = GetMessage(code) ?? defaultMessage();
nullだったら「??」の右側が入る
null条件演算子
return sale?.Product;
----------------------------------------------------------------------------------
こういうのは知っておかないと絶対読めないし、??とか:?とかググりづらいから知っておくべき。書くかどうかは別
読み取り専用プロパティ
public string GivenName{get; private set;}
params
数が決まっていない配列を受け取るとき
public double Median(params double[] args)
1を足す
++count
count++
後ろに置くのは知ってたけど前に置いてもいいんだ。
その他
path=@"\D:\CSharpPractice\CSharpPhraseBookAnswer\Chap04\Exercise1";
入れ替える
var temp = a;
a = b;
b = temp;