다수의 데이터를 한 가지의 변수에 저장하는 것
// 변수를 만들고 바로 방을 만들기
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
값을 필히 입력해주어야 한다.
배열과 함수는 유독 선택지가 많게 느껴진다. 알맞은 상황에 적절하게 사용하기 위해선 계속된 문제 풀이와 반복 숙달이 요구되는 것 같다.