본문 바로가기
[C#] Array.Sort() 람다식 이번 포스팅 내용은 Array.Sort에 람다식을 이용하는 방법이다.단순 오름차순으로 변경하는게 아니라 다양한 조건을 사용해 정렬을 하는 법을 찾다가 알게된 문법이다.Array.Sort()를 사용하면 오름차순 배열을 정렬할 수 있다.int[] arr1 = { 20, 60, 40, 50, 30, 10 };Array.Sort(arr1);Console.WriteLine(string.Join(", ", arr1)); // 10, 20, 30, 40, 50, 60 하지만 개발을 하다보면 오름차순 뿐만아니라, 내림차순이나, 기준이 같으면 다른 항목을 비교하는 등 다양한 조건이 요구될 때가 있다.람다식람다식은 c#에서 익명 메서드를 만드는 방법으로 간단하게 설명하자면 '(매개변수 목록) => 식'의 형태로 표현된다... 2025. 2. 12.
[C#] 프로퍼티(Property) / get, set 메서드 객체 지향 프로그램(OOP)에서 캡슐화(Encapsulation)는 객체의 필드와 메서드를 묶어, 실제 구현 내용 일부를 외부에 감추는 것을 의미한다.  c#에서도 클래스를 만들어 사용할 때 민감한 정보가 담긴 필드는 외부에서 함부로 읽고 쓰게 할 수 없게 하기 위해 은닉성 보장이 필요하다. 이를 위해 접근 제한자 private를 사용해 외부에서 접근하지 못하게 막아두는데, 이때 캡슐화된 필드를 메서드를 통해 부분적으로 외부에 들어나게 한다.public class Student1{ private string name; private int score; private void setName(string name) { this.name = name; } publi.. 2025. 1. 13.
[C#] List 검색 메서드 (Contains(), Exists(), Find()) C# List는 List에 특정 값이 존재하는지 확인하는 메서드가 여러개 있다.그중 Contains(), Exists(), Find()에 대해 알아보겠다.  Contains vs Exists vs Find List.Contains(T)단순히 매개변수의 내용을 포함하는 요소가 List에 있는지 여부를 확인한다.있으면 True, 없으면 False를 반환한다.List.Exists(Predicate)특정 값을 찾기 위한 조건과 일치하는 요소가 List에 포함되어 있는지 여부를 확인한다.있으면 True, 없으면 False를 반환한다.List.Find(Predicate)특정 값을 찾기 위한 조건과 일치하는 요소가 List에 처음으로 검색된 요소를 반환한다.검색되지 않으면 T형식의 기본값이 반환된다.아래 클래스는 이.. 2025. 1. 9.
[C#] Enumerable.Any(), Enumerable.All() 메서드 Any( ) 메서드 조건에 해당하는 값이 있는지 확인하나라도 일치하면 true전부 일치하지 않으면 false// 이름이 포함 되는가?var name = new string[] { "Kim", "Lee", "Park" };bool result;result = name.Any(str => str == "Choi");Console.WriteLine(result); // Falseresult = name.Any(str => str == "Lee");Console.WriteLine(result); // True// 소문자가 있는가?var s = "Hello World";result = s.Any(c => char.IsLower(c));Console.WriteLine(result); // True   All( ) .. 2025. 1. 8.
[C#] Enumerable.SelectMany() 메서드 SelectMany 메서드?컬렉션 속성을 가지고 있는 객체가 있고, 자식 컬렉션의 각 항목을 하나씩 열거해야하는 경우 사용하는 메서드쉽게 설명하면 Collection안에 다른 Collection이 정의되어 있고, 이 중 Sub Collection의 데이터를 가져올때 사용하는 메서드이다.  Select 메서드 Select 메서드는 객체에 담긴 데이터 중 원하는 값만 추출하여 새로운 형태의 컬렉션을 생성하는 메서드이다.아래의 예시는 Team 객체에서 name 값만 추출하여 새로운 컬렉션을 만든 것이다.class Program{ public class Team { public string name; public string[] players; } static vo.. 2025. 1. 7.
[C#] OfType<T>() vs CAST<T>() Enumerable.OfType()시퀀스 내의 형식과 일치하는 요소만 반환, 필터 기능이라고 보면됨일치하지 않는 요소가 있어도 예외를 발생 하지 않음object[] arr = { 1, "2", 3, "4", 5 };var ofTypeArr = arr.OfType();Console.WriteLine(string.Join(", ", ofTypeArr)); // 1, 3, 5int와 string 속성이 섞인 배열에서 int타입만 필터링 되었다.Enumerable.Cast() 시퀀스 내의 모든 요소의 형식을 타입으로 변환 시도만약 형 변환이 되지 않는 요소가 있을 경우 InvalidCastException 예외 발생 object[] arr = { 1, "2", 3, "4", 5 };var castArr = ar.. 2024. 12. 19.