분류 전체보기787 [C#]LINQ 즉시 실행과 지연 실행(Immediate Execution vs Deferred Execution) 즉시 실행과 지연 실행 C#의 LINQ는 두 가지 방식으로 실행됩니다. 즉시 실행(Immediate Execution) - count, average, min, max, ToArray, ToList 등.. 즉시 실행에 포함됩니다. 지연 실행(Deferred Execution) - select, SelectMany, where, Take, Skip 등.. 지연 실행에 포함됩니다. 이번 포스팅은 LINQ의 즉시 실행과 지연 실행에 대해 소개합니다. 즉시 실행 즉시 실행은 쿼리를 강제로 실행하고 결과를 바로 가져옵니다. 다음 예제는 즉시 실행을 설명하는 소스 코드입니다. public class Person { public int ID { get; set; } public string Name { get; se.. C#/LINQ 2022. 8. 15. [C#]LINQ 결과를 Dictionary로 변환 - ToDictionary 메서드 ToDictionary 메서드 C#의 Dictionary 클래스는 Key-Value 쌍으로 구성된 컬렉션입니다. LINQ 결과는 IEnumerable를 반환하므로 Key-Value 쌍으로 구성된 Dictionary으로 변환해야 하는 경우 특정 작업이 필요한데, LINQ에서 제공하는 ToDictionary() 메서드를 사용하여 LINQ 결과를 Dictionary으로 변환할 수 있습니다. System.Linq의 Enumerable 클래스에 정의된 ToDictionary() 메서드는 네 가지 오버로드된 버전이 존재합니다. public static Dictionary ToDictionary( this IEnumerable source, Func keySelector); public static Dictionar.. C#/LINQ 2022. 8. 15. [C#]LINQ 결과를 리스트 또는 배열로 반환 - ToList, ToArray 메서드 LINQ 결과를 리스트 또는 배열로 반환 C#의 Linq에서 제공하는 메서드는 IEnumerable를 반환합니다. 따라서, 다음 예제처럼 LINQ의 결과를 리스트 또는 배열로 반환하는 경우 컴파일 에러가 발생합니다. class Program { static void Main(string[] args) { List intList = new List() { 1, 2, 3 }; List whereResult = intList.Where(num => num > 1); Console.WriteLine("whereResult 값"); whereResult.ForEach(num => Console.Write(num + " ")); } } [에러 내용] 이번 포스팅에서 소개하는 다음 두 가지 메서드를 사용하면 LINQ.. C#/LINQ 2022. 8. 14. [C#]LINQ 데이터 추가 방법 - Append, Prepend 메서드 LINQ 데이터 추가 방법 이번 포스팅은 데이터 집합에 값을 추가할 수 있는 다음 두 가지 메서드를 소개합니다. - Append() - Prepend() 참고로 Append(), Prepend() 메서드는 .Net Framework 4.7.1 이상에서 제공하는 메서드이므로 이전 버전에서는 사용할 수 없습니다. Append 메서드 C#의 Linq에서 제공하는 Append() 메서드는 데이터 집합 마지막 위치에 값을 추가하는 용도로 사용됩니다. Append() 메서드는 기존 데이터 집합을 수정하지 않으며, 값이 추가된 새로운 데이터 집합을 반환합니다. public static IEnumerable Append( this IEnumerable source, TSource element); Append() 메서.. C#/LINQ 2022. 8. 14. [C#]LINQ 빈 값으로 설정 - Empty 메서드 Empty 메서드 지난 포스팅에서 데이터를 생성하는 메서드인 Range(), Repeat() 메서드에 대해 설명하였습니다. [C#]LINQ 지정된 범위 또는 횟수만큼 데이터 생성 - Range, Repeat 메서드 생성 연산자 지금까지는 Join, Select, Where, Take 메서드 등... 데이터 집합에서 원하는 데이터를 추출하는 방법을 소개했습니다. 이번 포스팅은 데이터를 생성할 수 있는 두 가지 메서드를 소개합니 developer-talk.tistory.com C#의 Linq는 또 다른 생성 메서드인 Empty() 메서드를 제공합니다. public static IEnumerable Empty(); Empty() 메서드는 매개변수가 존재하지 않으며 TResult 타입(제네릭 타입)인 IEnum.. C#/LINQ 2022. 8. 14. [C#]LINQ 지정된 범위 또는 횟수만큼 데이터 생성 - Range, Repeat 메서드 생성 연산자 지금까지는 Join, Select, Where, Take 메서드 등... 데이터 집합에서 원하는 데이터를 추출하는 방법을 소개했습니다. 이번 포스팅은 데이터를 생성할 수 있는 두 가지 메서드를 소개합니다. - Range() 메서드 - Repeat() 메서드 Range 메서드 Range() 메서드는 지정된 범위의 정수를 생성합니다. public static IEnumerable Range(int start, int count); Range() 메서드는 두 개의 int 타입 매개변수가 존재합니다. 첫 번째 매개변수는 지정된 범위에서 시작하는 값을 설정합니다. 두 번째 매개변수는 start부터 생성될 개수를 설정합니다. 예제 1. 1부터 10까지 데이터 생성 다음 예제는 Range() 메서드를 사.. C#/LINQ 2022. 8. 14. [C#]LINQ 특정 조건을 만족하는 데이터 생략하기 - SkipWhile 메서드 SkipWhile 메서드 C#의 Linq에서 제공하는 SkipWhile() 메서드는 데이터 집합의 데이터를 처음 위치에서 순회합니다. 데이터 집합을 순회하는 동안 SkipWhile() 메서드에 전달된 조건문의 결과가 false인 경우 반복문을 중단하고 나머지 데이터를 반환합니다. Sytem.Linq 네임스페이스에 존재하는 SkipWhile() 메서드는 두 가지 오버로드된 버전이 존재합니다. public static IEnumerable SkipWhile( this IEnumerable source, Func predicate); public static IEnumerable SkipWhile( this IEnumerable source, Func predicate); SkipWhile() 메서드의 매개변.. C#/LINQ 2022. 8. 14. [Java]문자열 위치 찾는 방법 문자열 위치 찾는 방법 이번 포스팅은 문자열에서 특정 문자열의 위치를 찾기 위해 다음 세 가지 방법을 소개합니다. 세 가지 방법 - indexOf(): 문자열의 처음 위치에서 특정 문자열의 위치를 찾습니다. - lastIndexOf(): 문자열의 마지막 위치에서 특정 문자열의 위치를 찾습니다. - 정규식 사용: 문자열에서 특정 문자열이 두 개 이상인 경우 문자열의 모든 위치를 찾습니다. 문자열 처음 위치에서 찾는 방법 문자열의 처음 위치에서 특정 문자열의 위치를 찾기 위해 indexOf() 메서드를 사용합니다. indexOf() - 문자열의 처음 위치에서 특정 문자열을 검색 후 위치(index)를 반환합니다. - 문자열에서 특정 문자열이 두 개 이상인 경우 시작 위치와 가장 가까운 위치를 반환합니다. -.. Java/문자열 2022. 8. 13. [Java]문자열 연결하는 방법 문자열 연결하는 방법 이번 포스팅은 Java에서 String을 연결하는 두 가지 방법에 대해 설명합니다. 1. + 연산자 2. String 클래스의 concat() 메서드 두 가지 방법 이외에도 StringBuffer, StringBuilder 클래스를 활용하는 방법이 있지만, 이번 포스팅은 String 클래스에서 문자열을 합치는 방법을 설명합니다. + 연산자 + 연산자를 사용하여 둘 이상의 문자열을 합칠 수 있습니다. + 연산자를 사용하여 둘 이상의 문자열이 합쳐진 결과는 힙(Heap) 영역에 생성됩니다. 둘 이상의 문자열을 + 연산자를 사용하여 합치는 경우 힙 영역에 수많은 쓰레기 데이터가 생성되는 걸로 소개되고 있는데, 이 내용은 Java 1.5 이전 이야기입니다. Java 1.5부터 + 연산자를 .. Java/문자열 2022. 8. 13. [Java]LocalDateTime 값 변경 방법(날짜 및 시간 변경) LocalDateTime 값 변경 방법 이번 포스팅은 LocalDateTime의 값(날짜 및 시간)을 변경하는 방법을 소개합니다. 이번 포스팅에서 소개하는 메서드를 사용하면, LocalDateTime 객체뿐만 아니라 LocalDate, LocalTime 객체의 값을 변경할 수 있습니다. 날짜 변경 방법 LocalDateTime, LocalDate 객체의 날짜(년 / 월 / 일)를 변경하는 방법입니다. withYear() - LocalDateTime 또는 LocalDate 객체의 연도(year)가 변경된 결과를 반환합니다. withMonth() - LocalDateTime 또는 LocalDate 객체의 개월(month)이 변경된 결과를 반환합니다. withDayOfMonth() - LocalDateTime.. Java 2022. 8. 13. [Java]시간 더하기 및 빼기(LocalTime 더하기 및 빼기) LocalTime 시간, 분, 초 더하기 및 빼기 이번 포스팅은 Java의 LocalTime의 시간을 더하거나 빼는 방법을 소개합니다. LocalTime에 시, 분, 초, 나노초 더하기 LocalTime 클래스에서 제공하는 다음 네 가지 메서드를 사용하여 LocalTime 객체에 시, 분, 초, 나노초를 더할 수 있습니다. plusHours() - 이 메서드를 호출한 LocalTime 객체에 시간(hour)이 더해진 LocalTime 객체를 반환합니다. plusMinutes() - 이 메서드를 호출한 LocalTime 객체에 분(minute)이 더해진 LocalTime 객체를 반환합니다. plusSeconds() - 이 메서드를 호출한 LocalTime 객체에 초(second)가 더해진 LocalTime.. Java 2022. 8. 13. [Java]날짜 더하기 및 빼기(LocalDate 더하기 및 빼기) LocalDate 년, 월, 일 더하기 및 빼기 이번 포스팅은 Java의 LocalDate의 날짜를 더하거나 빼는 방법을 소개합니다. LocalDate에 년, 월, 주, 일 더하기 LocalDate 클래스에서 제공하는 다음 네 가지 메서드를 사용하여 LocalDate 객체에 년, 월, 주, 일을 더할 수 있습니다. plusYears() - 이 메서드를 호출한 LocalDate 객체에 년도(year)가 더해진 LocalDate 객체를 반환합니다. plusMonths() - 이 메서드를 호출한 LocalDate 객체에 월(month)이 더해진 LocalDate 객체를 반환합니다. plusWeeks() - 이 메서드를 호출한 LocalDate 객체에 주(week)가 더해진 LocalDate 객체를 반환합니다... Java 2022. 8. 13. 이전 1 ··· 17 18 19 20 21 22 23 ··· 66 다음