다수의 데이터를 한 가지의 변수에 저장하는 것
// 변수를 만들고 바로 방을 만들기
string[] game = new string[3];
// 혹은
string[] game;
game = new string[3];
string[] game = new string[3];
game[0] = "Leage of Legends"
game[1] = "메이플 스토리"
Console.WriteLine(game[0]); // 출력 - League of Legends
Console.WriteLine(game[1]); // 출력 - 메이플 스토리
배열은 정수int, 실수float, 문자string 각 타입에 맞게 생성이 가능하다.
for반복문 사용이 가능하다.int[] year = new int[4]
year[0] = 2020;
year[1] = 2021;
year[2] = 2022;
year[3] = 2023;
for(int i = 0 ; i < 4 ; i++)
{
Console.WriteLine(year[i]);
}
int[] year = new int[4]
for(int i = 0 ; i < 4 ; i++)
{
year[i] = 2020 + i;
Console.WriteLine(year[i]);
}
foreach반복문으로 조건문을 작성하지 않고 배열을 처음부터 끝까지 반복시킬 수 있다.foreach(데이터 타입 변수 이름 in 배열)string[] games = new string[3] {"League of Legends", "메이플 스토리", "디아블로"};
foreach(string game in games)
{
Console.WriteLine(game);
}
string[] test = new string[2];
Console.WriteLine(test[0]);
// ""출력 즉 공백
int[] year = new int[2];
Console.WriteLine(year[0]);
// 0 출력
bool[] check = new bool[2];
Console.WriteLine(check[0]);
// false 출력
string[] game = new string[3] {"League of Legends", "메이플 스토리", "디아블로"};
int[] year = new int[4] {2020, 2021 2022, 2023};
// 중괄호를 통해 바로 데이터를 입력
string[] game = new string[] {"League of Legends", "메이플 스토리", "디아블로"};
// 대괄호 안의 Index 값을 비워서 데이터 갯수가 맍지 않는 에러를 방지
string[] game = {"League of Legends", "메이플 스토리", "디아블로"};
// new를 생략한 '암시적'배열
// Index는 0, 1, 2~ 순서이므로 헷갈리지 않기
배열을 생성하는 방법이 여러가지라서 상황에 알맞게 사용할 수 있는 지식이 필요해 보인다.
미리 만들어진 코드들 중 원하는 기능이 없을 때 함수를 직접 만들어서 사용이 가능하다.
void Hello()
{
body
}
int GetPoint()
{
Console.WriteLine();
return 100;
}
void = 반환되는 값의 변수 타입, void는 반환되는 값이 없다는 뜻
int = 반환되는 값이 있다면 자료형 타입을 입력, 반환되는 값과 자료형 타입이 일치해야 한다.
Hello = 함수 이름
() = 매개변수
return = 반환되는 값
body = 출력될 함수의 기능
함수의 출력은 함수이름();
int hp = 5;
Attack(); // 데미지 : 1 현재체력 : 4
Attack(); // 데미지 : 1 현재체력 : 3
Attack(); // 데미지 : 1 현재체력 : 2
Attack(); // 데미지 : 1 현재체력 : 1
Attack(); // 데미지 : 1 현재체력 : 0
Attack(); // Console X
...
void Attack()
{
if(hp < 1)
{
return; // 함수 종료
}
--hp;
Console.Write("데미지 : 1 현재체력 : " + hp);
}
// return으로 hp가 1 미만이 되었을 때 함수가 종료되도록 한다.
int hp = 5;
void Attack(int damage)
{
if(hp < 1)
{
return;
}
hp -= damage;
Console.Write("데미지 : " + damage + " 현재체력 : " + hp);
}
damage(2); // 데미지 2 현재체력 3 - 출력
// -=의 의미는 hp - damage 와 같다.
void DisplayMyInfo(int level, string name, string job)
{
Console.WriteLine("레벨 : " + level + " 이름 : " + name + " 직업 : " + job);
}
DisplayMyInfo(10, "이썽이", "전사");
// 레벨 : 10 이름 : 이썽이 직업 : 전사 - 출력
// 매개변수와 입력하는 값의 타입은 일치해야 한다.
int hp = 5;
int GetPoint()
{
if(hp < 1)
{
return 200;
}
return 0; <- 기본 return 값 설정
}
// if조건문에 return값을 입력 했더라도 if조건에 만족하지 않았을 때의 기본 return값을 필히 입력해주어야 한다.
배열과 함수는 유독 선택지가 많게 느껴진다. 알맞은 상황에 적절하게 사용하기 위해선 계속된 문제 풀이와 반복 숙달이 요구되는 것 같다.