C#190 [C#]DataTable 복사(Copy)와 복제(Clone) 방법 DataTable을 복사하는 DataTable.Copy() 메소드와 DataTable을 복제하는 DataTable.Clone() 메소드를 정리합니다. Copy() DataTable의 컬럼(Column), 행(Row), 행의 상태(RowState)를 복사합니다. DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(string)); dt.Columns.Add("Subject", typeof(string)); dt.Columns.Add("Score", typeof(int)); DataRow rowEx1 = dt.NewRow(); rowEx1["ID"] = "A"; rowEx1["Subject"] = "Java Programming"; rowEx1["Sco.. C# 2021. 7. 27. [C#]DataTable에 컬럼(Column) 추가하는 방법 C#에서 DataTable에 컬럼(Column)을 추가하는 방법에 대해 설명합니다. Add() 메서드를 사용 가장 기본적인 방법으로 컬럼의 이름과 타입을 설정합니다. DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(string)); dt.Columns.Add("Subject", typeof(string)); dt.Columns.Add("Score", typeof(int)); SetOrdinal() 메서드를 사용하여 원하는 위치(인덱스)에 추가 SetOrdinal() 메서드 - DataColumn을 지정된 위치(인덱스)로 설정합니다. public void SetOrdinal (int ordinal); 첫 번째 매개변수 - 지정된 위치(인덱스) Da.. C# 2021. 7. 26. [C#]DataTable에 행(Row) 추가하는 방법 C#에서 DataTable에 행(Row)을 추가하는 방법에 대해 설명합니다. 방법 1. DataRow를 사용 추가하려는 행(Row)의 수만큼 DataRow가 필요하므로 좋은 방법은 아닙니다. /* DataTable 생성 및 컬럼 설정 */ DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(string)); dt.Columns.Add("Subject", typeof(string)); dt.Columns.Add("Score", typeof(int)); /* 1. DataRow를 사용하는 방법 */ DataRow rowEx1 = dt.NewRow(); rowEx1["ID"] = "A"; rowEx1["Subject"] = "Java Programming.. C# 2021. 7. 26. [C#]ref와 out 키워드 ref와 out 키워드 ref 및 out 키워드는 메서드 또는 함수 내에서 인수를 전달하는 데 사용됩니다. 둘 다 인수 / 매개 변수가 참조로 전달되었음을 나타냅니다. 공통점 ref와 out은 런타임에 다르게 처리되며 컴파일 시간에 동일하게 처리됩니다. 속성(Property)은 변수가 아니므로 ref 또는 out 매개변수로 전달할 수 없습니다. 런타임 - 프로그램이 실행되는 시간입니다. 컴파일 - 프로그램을 생성하는 과정입니다. ref 키워드 ref 키워드는 인수를 참조로 전달하는 데 사용됩니다. 즉, 해당 매개 변수의 값이 메서드에서 변경되면 호출하는 메서드에 반영됩니다. ref 키워드를 사용하여 전달 된 인수는 호출된 메서드에 전달되기 전에 호출 메서드에서 초기화되어야 합니다. 특징 매개 변수가 re.. C# 2021. 5. 16. [C#]Call By Value, Call By Reference Call By Value, Call By Reference C#에서는 함수 또는 메서드를 호출하는 두 가지 방법이 있습니다. 첫 번째는 "Call By Value(값으로 호출)"이고 두 번째는 "Call By Reference(참조로 호출)"입니다. 두 방법의 주요 차이점은 Call By Value는 변수의 값을 전달하고 Call By Reference는 해당 변수의 주소를 전달한다는 것입니다. Call By Value에 의한 호출은 변수의 값을 함수에 전달합니다. 함수 내부에서 전달 받은 값을 변경해도 원래 변수의 값은 변경되지 않습니다. Call By Reference에 의한 호출은 변수 자체를 함수에 전달합니다. 함수 내부에서 전달 받은 값의 변경 사항이 있을 경우 원래 변수에도 영향을 줍니다. C.. C# 2021. 5. 16. [C#]값 형식(Value Types)과 참조 형식(Reference Types) 값 형식(Value Types)과 참조 형식(Reference Types) C#에서는 메모리에 공간에 데이터를 할당하는 두 가지 방법이 있습니다. 값 형식(Value Types)은 스택(Stack) 공간에 데이터를 할당하며, 참조 형식(Reference Types)은 힙(Heap) 공간에 데이터를 할당합니다. 이번 포스팅에서는 값 형식과 참조형식에 대해 정리하였습니다. 목차 스택(Stack)과 힙(Heap) 스택(Stack)과 값 형식(Value Type) 힙(Heap)과 참조 형식(Value Type) 값 형식(Value Type)과 참조 형식(Reference Types)의 주요 차이점 스택(Stack)과 힙(Heap) 스택(Stack) - 정적으로 메모리에 할당됩니다. - 스택 영역에 있는 변수들은.. C# 2021. 5. 15. [C#]물음표(?) 사용 이전 포스팅에서는 숫자형과 불리언 타입의 변수에 null을 대입할 수 있는 Nullable 타입을 소개했습니다. 이번 포스팅에서는 null과 관련된 연산자들을 정리합니다. 목차 ?? 연산자 ??= 연산자 ?. 연산자 ?[] 연산자 ?? 연산자 피연산자가 null이 아닌 경우 왼쪽 피연산자의 값을 반환합니다. 피연산자가 null일 경우에는 오른쪽 피연산자의 값을 반환합니다. a ?? b; a가 null이면, b가 반환됩니다. a가 null이 아니면 a가 반환됩니다. ?? 연산자 사용 방법 int? a = null; // a가 null이므로 오른쪽 피연산자(29)가 반환됩니다. int b = a ?? 29; Console.WriteLine(b); 실행 결과 ??= 연산자 왼쪽 피연산자가 null일 경우 오른.. C# 2021. 5. 13. [C#]Nullable 타입 대부분의 프로그래밍 언어에서는 숫자형 또는 불리언 타입의 변수에 null을 허용하지 않습니다. 하지만, C#에서 Nullable 타입을 사용하여 변수를 선언하면, 숫자형 또는 불리언 타입에도 null을 대입할 수 있습니다. 이번 포스팅에서는 Nullable 타입의 사용 방법을 정리합니다. 목차 Nullable 타입 사용 방법 int a;와 int? a = null;의 차이점 Nullable 타입의 추가적인 기능(HasValue, Value) Nullable 타입 사용 방법 타입 뒤에 "?"를 붙여주면 됩니다. 자료형? 변수이름; 숫자형과 불리언 타입의 변수를 null로 초기화 후 null이 맞는지 체크하는 코드입니다. class Program { static void Main(string[] args) .. C# 2021. 5. 13. [C#]자동 구현 프로퍼티(Auto Property) 이전 포스팅에서는 프로퍼티의 개념과 간단한 사용방법을 소개했습니다. 자동 구현 프로퍼티는 프로퍼티를 좀 더 사용하기 쉽고 코드를 간결하게 해주는 메커니즘입니다. 이번 포스팅은 자동 구현 프로퍼티(Auto Property)를 사용하는 방법을 정리합니다. 목차 자동 구현 프로퍼티(Auto Property) 캡슐화를 위반하는가? 자동 구현 프로퍼티(Auto Property) 자동 구현 프로퍼티는 프로퍼티로 작성한 코드를 더 간결하게 해주는 메커니즘입니다. 접근자에 조건이 없는 경우 사용되며, 필드를 작성하지 않아도 된다는 이점이 있습니다. 프로퍼티(Property) 기반의 코드 필드를 선언하고 프로퍼티의 get, set 접근자를 작성합니다. class Person { private string age; // .. C# 2021. 5. 8. [C#]프로퍼티(Property) - get, set 사용 프로퍼티(Property)는 C#에서 클래스 내부의 변수를 읽거나 값을 대입하는 메커니즘입니다. 클래스 내부의 변수를 외부에서 접근할 수 있도록 public 접근자로 선언할 경우 의도치 않게 값이 변형되는 문제가 발생합니다. 이러한 문제를 방지하기 위해 프로퍼티라는 메커니즘을 사용하는 것이 좋습니다. 이번 포스팅은 프로퍼티의 개념과 간단한 예제코드를 정리합니다. 캡슐화 프로퍼티의 개념을 설명하기 앞서 "캡슐화"에 대한 기본적인 이해가 필요합니다. - 캡슐화는 정보 은닉을 위해 클래스에서 선언된 변수가 외부에서 접근이 안되도록 public이 아닌 private로 선언하여 외부에서 접근을 불가능하게 합니다. - 프로퍼티는 get과 set을 사용하여 private로 선언된 변수에 접근이 가능하도록 합니다. 정.. C# 2021. 5. 8. 이전 1 ··· 13 14 15 16 다음