유니티3D 프로그래밍
C# 1주차 5일 수업 내용 (21.03.12) 본문
ret와 out
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
int x = 10; // 초기화 필요
PassByValue(x);
Console.WriteLine(x);
PassByReference(ref x);
Console.WriteLine(x);
int y; // 초기화 필요 없음
OutParameter(out y);
Console.WriteLine(y);
}
public void PassByValue(int a)
{
a += 3;
}
public void PassByReference(ref int a)
{
a += 3;
}
public void OutParameter(out int a)
{
a = 10;
a *= a;
}
}
}
params 키워드
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
ParamsMethod1(1, 2, 3, 4, 5);
ParamsMethod2(1, 2, 3, 4, 5);
ParamsMethod3(1, 2, "홍길동", "임꺽정", new Unit());
}
public void ParamsMethod1(int a, int b, int c, int d, int e)
{
Console.WriteLine(a);
}
public void ParamsMethod2(params int[] arr)
{
for(int i = 0; i < arr.Length; i++)
{
Console.Write("{0} ",arr[i]);
}
}
public void ParamsMethod3(params object[] arr)
{
object obj = arr[4];
Unit unit = (Unit)obj;
}
}
}
배열
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//정수 배열 변수 선언
int[] arr = new int[5];
//배열 인스턴스의 0번째 인덱스 변수에 값 할당
arr[0] = 2;
//배열 인스턴스의 0번째 인덱스 변수의 값 출력
int a = arr[0];
Console.WriteLine(arr[0]);
Console.WriteLine(a);
//배열의 길이 출력
Console.WriteLine(arr.Length); //5
//배열의 마지막 인덱스
int lastIndex = arr.Length - 1; //4
//배열의 마지막 인덱스 값
int b = arr[lastIndex];
}
}
}
배열의 요소 출력
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//정수 배열 변수 선언
int[] arr = new int[5];
arr[1] = 100;
//for문을 사용해 배열의 요소의 값 출력
for(int i = 0; i < arr.Length; i++)
{
int num = arr[i];
Console.WriteLine(num);
}
//foreach문을 사용해 배열의 요소의 값 출력
foreach(int num in arr)
{
Console.WriteLine(num);
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//Unit타입 배열 변수 선언
Unit[] units = new Unit[5];
//Unit타입 배열 요소에 값 할당
for (int i = 0; i < 4; i++)
{
units[i] = new Unit();
}
//Unit타입 배열의 길이 출력
Console.WriteLine(units.Length);
//Unit타입 배열의 요소 출력
//for 문
for(int i = 0; i < units.Length; i++)
{
Unit unit = units[i];
Console.WriteLine(unit);
}
//foreach 문
foreach(Unit unit in units)
{
Console.WriteLine(unit);
}
}
}
}
string 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//string배열 변수 선언
string[] arr;
//string 배열 인스턴스 생성 (빈배열)
arr = new string[3];
//string 배열 인스턴스 요소에 값 할당
//"홀길동," "임꺽정", "장길산"
arr[0] = "홍길동";
arr[1] = "임꺽정";
arr[2] = "장길산";
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}",arr.Length);
//배열의 요소 출력(for, foreach)
for(int i = 0; i < arr.Length; i++)
{
string name = arr[i];
Console.WriteLine(name);
}
Console.WriteLine();
foreach(string name in arr)
{
Console.WriteLine(name);
}
}
}
}
int 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//int배열 변수 선언
int[] arr;
//int배열 인스턴스 생성 (빈배열)
arr = new int[5];
//int배열 인스턴스 요소에 값 할당
for(int i = 0; i < arr.Length; i++)
{
arr[i] = i;
}
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}", arr.Length);
Console.WriteLine();
//배열의 요소 출력(for, foreach)
for(int i = 0; i < arr.Length; i++)
{
int num = arr[i];
Console.WriteLine(num);
}
foreach(int num in arr)
{
Console.WriteLine(num);
}
}
}
}
float 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//float배열 변수 선언
float[] arr;
//float배열 인스턴스 생성 (빈배열)
arr = new float[5];
//float배열 인스턴스 요소에 값 할당
for(int i = 0; i < arr.Length; i++)
{
arr[i] = i+0.5f;
}
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}", arr.Length);
//배열의 요소 출력(for, foreach)
for (int i = 0; i < arr.Length; i++)
{
float num = arr[i];
Console.WriteLine(num);
}
Console.WriteLine();
foreach (float num in arr)
{
Console.WriteLine(num);
}
}
}
}
bool 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//bool배열 변수 선언
bool[] arr;
//bool배열 인스턴스 생성 (빈배열)
arr = new bool[4];
//bool배열 인스턴스 요소에 값 할당
arr[0] = true;
arr[1] = false;
arr[2] = false;
arr[3] = true;
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}", arr.Length);
//배열의 요소 출력(for, foreach)
for(int i = 0; i < arr.Length; i++)
{
bool stat = arr[i];
Console.WriteLine(stat);
}
Console.WriteLine();
foreach(bool stat in arr)
{
Console.WriteLine(stat);
}
}
}
}
Class 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//class배열 변수 선언
Terran[] terran;
//class배열 인스턴스 생성 (빈배열)
terran = new Terran[5];
//class배열 인스턴스 요소에 값 할당
for(int i = 0; i < terran.Length; i++)
{
terran[i] = new Terran();
}
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}", terran.Length);
//배열의 요소 출력(for, foreach)
for(int i = 0; i < terran.Length; i++)
{
Terran terran1 = terran[i];
Console.WriteLine(terran1);
}
Console.WriteLine();
foreach(Terran terran1 in terran)
{
Console.WriteLine(terran1);
}
}
}
}
enum 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
enum eType
{
Test1,
Test2,
Test3
}
//생성자
public App()
{
//enum배열 변수 선언
eType[] arr;
//enum배열 인스턴스 생성 (빈배열)
arr = new eType[3];
//enum배열 인스턴스 요소에 값 할당
arr[0] = eType.Test1;
arr[1] = eType.Test2;
arr[2] = eType.Test3;
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}", arr.Length);
//배열의 요소 출력(for, foreach)
for(int i = 0; i < arr.Length; i++)
{
eType test = arr[i];
Console.WriteLine(test);
}
Console.WriteLine();
foreach(eType test in arr)
{
Console.WriteLine(test);
}
}
}
}
char 배열 연습
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study00
{
public class App
{
//생성자
public App()
{
//char배열 변수 선언
char[] arr;
//char배열 인스턴스 생성 (빈배열)
arr = new char[5];
//char배열 인스턴스 요소에 값 할당
arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
arr[3] = 'd';
arr[4] = 'e';
//배열의 길이 출력
Console.WriteLine("배열의 길이 출력 : {0}", arr.Length);
//배열의 요소 출력(for, foreach)
for(int i = 0; i < arr.Length; i++)
{
char test = arr[i];
Console.WriteLine(test);
}
foreach(char test in arr)
{
Console.WriteLine(test);
}
}
}
}
'C# > 수업내용' 카테고리의 다른 글
C# 2주차 2일 수업 내용 (21.03.16) (0) | 2021.03.16 |
---|---|
C# 2주차 1일 수업 내용 (21.03.15) (0) | 2021.03.15 |
C# 1주차 4일 수업 내용 (21.03.11) (0) | 2021.03.11 |
C# 1주차 3일 수업 내용 예제 5번 (21.03.10) (0) | 2021.03.10 |
C# 1주차 3일 수업 내용 예제 4번 (21.03.10) (0) | 2021.03.10 |