본문 바로가기
반응형

C#59

[C#] 가변인자 매개변수 params params 란? 함수에서 매개변수를 넘길때 1,2,3개 이렇게 개수를 지정해 주었던 것과 달리, params 키워드를 사용하면 개수에 제한 없이 매개변수를 넘길 수 있다. 가변 인자 매개변수 = 개수가 변하는 인자들을 넘길 수 있는 매개변수 params 규칙 선언 부에서 params 키워드는 타입 맨 앞에 와야한다. 가변인자 매개변수를 선언할 때는 []를 이용하여 1차원 배열로 선언해야 한다. 데이터 타입이 애매할 때는 모든 클래스의 상위 클래스인 object 클래스 배열을 사용할 수 있다. 호출부에서 각 매개변수는 쉼표로 구분해야한다. 호출부에서 매개변수를 보내지 않아도 된다. 이경우 길이는 0이되고 비어있는 매개변수가 된다. 선언 - public static void Add(params int[] .. 2023. 7. 25.
[C#] 링크(LINQ) - 집합 연산자 Distinct, Union, Intersect, Except 집합 연산자란? 집합 연산자는 두 집합 간에 관계를 활용하는 연산자이다. Distinct() Distinct 메서드는 집합 내에 중복 요소를 제거하기 위해 사용된다. int[] factorsOf300 = { 2, 2, 3, 5, 5 }; var uniqueFactors = factorsOf300.Distinct(); // uniqueFactors = { 2, 3, 5 }; Union() Union 메서드는 두 집합을 각 원소가 중복되지 않도록 더한 새로운 집합을 만들때 사용된다. int[] numbersA = { 0, 2, 4, 5, 6, 8, 9 }; int[] numbersB = { 1, 3, 5, 7, 8 }; var uniqueNumbers = numbersA.Union(numbersB); // .. 2023. 7. 20.
[C#] 링크(LINQ) Take(), Skip() LINQ에서 제공하는 확장 메서드 중 Take, Skip, TakeWhile, SkipWhile을 분할 연산자라고 한다. 분할 연산자는 출력 시퀀스를 분할하여 반환한다. Take() Take 메서드로 numbers 배열에서 처음 3개의 원소만 꺼내 출력 시퀀스를 만든다. int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 }; var first3Numbers = numbers.Take(3); // first3Numbers = { 5, 4, 1 }; Skip() Skip 메서드로 numbers 배열에서 처음 4개의 원소를 건너뛰고 출력 시퀀스를 만든다. int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 }; var allButFirst4Nu.. 2023. 7. 17.
[C#] 링크(LINQ) LINQ란? LINQ(Language-INtegrated Query)의 약자인 LINQ는 데이터 질의(Query) 기능을 C#에서 사용할 수 있는 기술이ㅏㄷ. 쉽게 설명하자면 C#의 배열, 컬렉션, XML, DataSet 등 에서 내가 우너하는 데이터만 가져오고 싶은 경우 사용할 수 있는 기술이라고 할 수 있다. LINQ의 장단점을 알아보기 전에 LINQ가 무엇인지 다음 예제를 통해 간략하게 알아보자. 다음 예제는 배열에서 대문자 "A"로 시작하고 문자열의 길이가 3보다 큰 문자열을 LINQ로 추출한 뒤 콘솔에 출력한다. class Program { static void Main(string[] args) { string[] strArr = { "Apple", "Banana", "Car", "Angula.. 2023. 7. 13.
반응형