C#の復習
この記事の趣旨説明
結構前にはProgram書いてたけど、だいぶ忘れちゃったので、改めて思ひ出しがてら記事にします。
正直、ほんとに殴り書きしてる感じなので、讀み飛ばしていただいて全く問題ありません。
この講座を參考にしてゐます。
Unity ゲーム開発:インディーゲームクリエイターが教える C#の基礎からゲームリリースまで【スタジオしまづ】
初心者OK!C#を使って複雑なGameを自分で開発しよう。コースの終わりにはオリジナルRPGを App Store&Google Playでリリースしよう!!!評価: 4.4(5段階中)1766件のレビュー合計13.5時間レクチャーの数: 122初級現在の価格: ¥27,800
Comment Out
//を文頭に入れることによって、Program言語ではないと判断し、ただの文字列として処理する。要はMemo書きや一時的に命令を無効化したいときに使へる。
/* ~ */と~に文字を入れると、~の部分がComment Outする。
void Start
Methodを宣言してゐる。Methodとは、何かの処理をする特定のPatternで呼び出されるもの。
void Update
これもMethodで、Programを無限に繰り返す。
UnityEngine.Debug.Log
UnityにおいてConsole畫面で處理が實行されたかわかるようにできる。
「變數=文字列の値を變へられるもの」
string
文字列型の變數
void Start()
{
string say; //宣言
say = " Hello world"; //代入
UnityEngine.Debug.Log(say);
}
「定數=文字列の値を變へられないもの」
const string
文字列型の定數
void Start()
{
const string sayConst = "Hello world2";
UnityEngine.Debug.Log(sayConst);
}
「變數の型」
文字列型=string 整數=int 浮動小數點=float speed 論理値=bool
「數値の演算と演算子」
+は足し算 -は引き算 *は掛け算 /は割り算 %は割り算で餘りを出す +=は數値に特定の數値を加へる ++は+=と同じだけれど、1ずつしか足せない -=は+=の引き算版 --は++の引き算版 &&は〇〇and ||は〇〇or !は否定 >は○○より大きい >=は○○以上 <は〇〇未満 <=は○○以下 ==は等しい !=は違ふ
「Format」
文字列内で特定の形式を指定し、その形式に基づいて變數や値を挿入する。
public class firstprogram : MonoBehaviour
{
string Name = "入江";
int hp = 100;
void Start()
{
UnityEngine.Debug.Log(string.Format("{0}のHP:{1}", Name, hp ));
}
「if」
正しい場合と正しくない場合に別の實行をする
void Start()
{
string characterType = "Player";
if (characterType == "Player")
{
UnityEngine.Debug.Log("味方だよ");
}
else if(characterType == "Enemy")
{
UnityEngine.Debug.Log("敵だよ");
}
else if (characterType == "Friend")
{
UnityEngine.Debug.Log("仲間だよ");
}
else
{
UnityEngine.Debug.Log("その他");
}
}
「Switch」
ifと同じ。特定できるものに使ふのが良い。
void Start()
{
string characterType = "Player";
switch(characterType) //判斷するもの
{
case "Player": //比較するもの
Debug.Log("味方だよ");
break; //次の處理に移るための文
case "Enemy":
UnityEngine.Debug.Log("敵だよ");
break;
case "Friend":
UnityEngine.Debug.Log("仲間だよ");
break;
default: //上記以外
UnityEngine.Debug.Log("その他");
break;
}
}
「繰り返し處理 whileとfor」
↓どちらでもOKらしい。
void Start()
{
int x = 0;
while(x < 10)
{
UnityEngine.Debug.Log(x);
x++;
}
for(int i=0; i<10; i++)
{
UnityEngine.Debug.Log(i);
}
}
「配列」
數字などをまとめる、for文と相性がいい
int[] xList = new int[3]; //Pattern 1
xList[0] = 0;
xList[1] = 2;
xList[2] = -3;
int[] xList = new int[3]{0, 2, -3};
int[] xList = new int[3]{0, 2, -3}; //Pattern 2
「Listとforeach」
要素の追加と削除が可能
void Start()
{
List<int> numbers = new List<int>() { -1, 21, 23 };
UnityEngine.Debug.Log(numbers[0]);
UnityEngine.Debug.Log(numbers[1]);
UnityEngine.Debug.Log(numbers[2]);
}
void Start()
{
List<string> nameList = new List<string>() { "入江遜考", "イリエ", "ユヅチカ" };
foreach(string Name in nameList)
{
UnityEngine.Debug.Log(Name);
}
}
「關數」
處理をまとめた便利道具
void Start()
{
string name1 = SampleNameFunction("irie");
UnityEngine.Debug.Log(name1);
}
// Update is called once per frame
string SampleNameFunction(string sampleName)
{
UnityEngine.Debug.Log(sampleName);
return sampleName + "さん";
}
「Class」
Programを分割するためのもの。變數と關數を持ってゐる。
public class PlayerModel
{
string name;
int hp;
int at;
public PlayerModel()
{
name = "irie";
}
public PlayerModel(string name)
{
this.name = name;
}
public void SayName()
{
UnityEngine.Debug.Log(name);
}
public class firstprogram : MonoBehaviour{
void Start()
{
PlayerModel player = new PlayerModel("yudzuchika");
PlayerModel player2 = new PlayerModel("nanashi");
player.SayName();
player2.SayName();
}
「Property」
Class内の變數に對して、直接Accessさせないために制御する仕組み(意味が解らない)
public string Name
{
get { return Name; }
set { Name = value; }
}
以上、C#の基礎でした。
これ作るのに3日くらいかかってしまひました!
この記事が気に入ったらサポートをしてみませんか?