今までCとJavaをメインに使ってきましたが、最近C#を勉強し始めたところです。簡単にまとめてみました。
■データタイプ
主にsbyte/byte、short/ushort、int/uint、long/ulong、float/double/decimal、bool、char/string。ただしほかの言語(F#、VB等)からも使用する場合、CLS(Common Language Specification)に準拠する必要があります。そうなると普段はbyte、short、int、long、float/double/decimal、bool、char、stringを使ったほうが良さそう。
■演算子
ほとんどの演算子はC/Javaとそれほど変わらないです
- 数学演算子:+、 –、 *、 /、 %
- ビット演算子:&、 |、 ^、 <<、 >>
- 比較演算子:<、 >、 <=、 >=、 ==、 !=
- 条件演算子:&&、 ||、 !、?:
- 代入演算子:=、 +=、 –=、 *=、 /=、 %=、 &=、 |=、 ^=、 <<=、 >>=
下記C#特有の演算子もあります
- is:Javaのinstanceof相当、型をチェックするための演算子
- as:キャスト演算子です。キャスタができない場合は例外の代わりにnullを返します。何と言ってもtry/catchが要らないので、場合によってプログラムがすっきりになる。
- checked/unchecked:演算時のオーバーフローチェックするかどうかを明示的に指定。指定がない場合はコンパイラの設定に従います。
- typeof:クラスの情報を取り出すためのTypeオブジェクトを取得。Javaのclassメンバー相当。ちなみにRuntime時のインスタンスはGetType()メソッド(JavaのgetClass()メソッド相当)を使います。
■コンソール出力
「Hello world!」プログラムを作るために、コンソール出力APIが必要。C#の場合Console.Write/WriteLineを使用します。
- Console.Write("Hello world\r\n");
- Console.WriteLine("Hello world");
変数を出力する場合、下記二つの方法があります。
- printf風
int intVal = 1; string strVal = “abc”;
Console.Write(“intVal={0}, strVal={1}”, intVal, strVal);
- 文字列連結
int intVal = 1; string strVal = “abc”;
Console.Write(“intVal=” + intVal + “, strVal” + strVal);
To be continued
0 件のコメント:
コメントを投稿