낑깡의 게임 프로그래밍 도전기

C# 프로그래머스 Lv.0 알아야 할 함수들 (1) 본문

프로그래머스

C# 프로그래머스 Lv.0 알아야 할 함수들 (1)

낑깡겜플밍 2025. 6. 28. 14:24
반응형

1. 배열의 복사

Array.Copy(원본배열, 원본배열의 복사 시작위치, 복사될 배열, 복사될 배열의 시작위치, 복사 개수);

Array.Copy(원본배열, 복사될 배열, 복사개수) - 인덱스 0부터 복사 개수만큼 복사함.

 

1-1. 리스트를 배열에다 복사

리스트에 1,2,3,4라는 요소가 있을때

int[] array = new int[5];
List<int> list = new List<int>()
{
    1,2,3,4
};
list.CopyTo(array); //1, 2, 3, 4, 0

처음부터 끝까지 리스트 요소 복사. (배열의 길이가 리스트 보다 작으면 오류남.)

int[] array = new int[5];
List<int> list = new List<int>()
{
    1,2,3,4
};
list.CopyTo(array, 1);// 0, 1, 2, 3, 4

배열의 중간부터 끝까지 리스트 요소 복사

int[] array1 = new int[5];
List<int> list = new List<int>()
{
    1,2,3,4
};
list.CopyTo(1, array3, 3, 2);//0, 0, 0, 2, 3

배열의 중간 부터 리스트의 특정부분 복사

 

3. 원하는 문자열 위치(값위치) 찾기

string.IndexOf(str);

string : 기준이 될 문자열 / str : 찾을 문자열

-1이 나오면 못찾은 거고 0이면 첫번째, n이면 n번째 배열에서 부터 찾은 거임.

string.LastIndexOf(str); //뒤에서 부터 찾기

마찬가지로 -1이나오면 못찾은 것이고 0이면 첫번째부터 시작, n이면n번째 배열부터 저글자가 시작하는 것임.

*List.IndexOf(arr.Min());//리스트 값 위치 찾기에도 쓸수있다. //어떤 배열의 최소값과 같은 리스트 위치 찾기

myString.IndexOf(str, index);//이렇게 탐색을 시작할 위치도 지정할수 있다

 

4. 원하는 문자열 찾기 

using System.Linq;

string.Contains(str); 

1이나오면 찾은 거고 0이 나오면 못찾은 것이다.

string도되고 배열안에있는 요소 찾기도 된다.

 

5. 대 소문자 바꾸기

string.ToUpper(); 대문자로 바꾸기

string.ToLower(); 소문자로 바꾸기

char.ToUpper(); 대문자로 바꾸기

char.ToLower(); 소문자로 바꾸기

 

6. 정렬

Array.Sort(myArray); //순서대로 정렬해줌 //배열식

myList.Sort(); //리스트식

Array.Reverse(myArray); // 뒤집어줌 //배열식

myList.Reverse(); //리스트식

*일부 구간만 뒤집기

Array.Reverse(myArray, index, length);

myList.Reverse(index, length);

*인수 3개

Array.Sort(intArray, 1, 5);

1번째 위치(인덱스)부터 5개의 요소만 정렬하기

Array.Sort(arr1, arr2);

arr1이 우리가 알던 방식으로 정렬되고 arr2가 arr1기준으로 같은 인덱스 로 나열된다

 

7. n1~n2까지의 연속된 숫자 저장하기

usign System.Linq;

List<int> myList = Enumerable.Range(0,10).ToList(); //0부터 10번째 배열까지 채움(0~9) //리스트식

int[] myArray = Enumerable.Range(5, 9).ToArray(); //5부터 9번째 배열까지 채움(5~13) //배열식

* Reverse와 같이쓰기

int[] myArray = Enumerable.Range(5, 9).Reverse().ToArray(); // 5부터 9번째 배열까지 채우고 뒤집음 (13~5)

 

8. 자료형 변환

int.Parse(string); //string을 int 로 변환

int k = 3; (char)k+'0'; //char형식 특징상 '0'을 안붙이면 k의 아스키코드 숫자로 변환되기에 '0'을 붙여서 구별하는 듯하다

 

9. 최대값 최소값 제곱근 제곱 절대값  

Math.Max(a,b); 

Math.Min(a,b);

Math.Sqrt(a); 

Math.Pow(3, 5);//3의 5제곱//double타입

Math.Abs(a - b);

 

10. Array와 List에 대한 최대값, 최소값, 합, 평균

myArrayList.Max(); //최대값

myArrayList.Min(); //최소값

myArrayList.Sum(); //모든 값의 합

myArrayList.Average(); //평균

 

11. 문자열 또는 단일 문자 바꾸기, 공백제거, 문자 삭제 string.Replace 

string.Replace("저희나라", "우리나라"); //저희나라라는 글자가 우리나라로 바뀜

string.Replace(" ", ""); //공백 제거

string.Replace("x", ""); //문자 삭제

 

12. 다차원배열 길이 구하기

arr.GetLength(0) //첫번째 차원 크기 반환

arr.GetLength(1) //두번쨰 차원 크기 반환

반응형