c#187 [C#]익명 타입(Anonymous Type) 익명 타입(Anonymous Type)이란? 익명 타입은 C# 3.0에서 추가된 키워드로 타입이 지정되지 않은 변수를 var 키워드로 선언할 수 있습니다. 익명 타입으로 변수를 선언하는 경우 변수 초기화 값을 기반으로 컴파일러가 변수의 타입을 자동으로 결정합니다. var str = "str"; Console.WriteLine(str.GetType()); // System.String 변수 str은 익명 타입으로 선언되었지만, 초기화 값이 문자열이므로 컴파일러가 변수 str을 문자열 타입이라고 결정합니다. GetType() 메서드를 사용하여 str의 타입이 String인 것을 확인할 수 있습니다. 이번 포스팅은 익명 타입에 대해 설명합니다. 목차 익명 타입으로 변수 선언 및 주의사항 반복문에서 사용 읽기 .. C# 2022. 2. 5. [C#]StringBuilder 사용 방법 StringBuilder란? C#의 StringBuilder는 변경할 수 없는 string과 달리 변경 가능한 문자열을 나타내는데 사용하는 클래스입니다. string 객체는 값이 변경되면 메모리에서 이전 참조 값을 버리고 새로운 참조 값으로 변경되지만, StringBuilder 객체는 참조 값이 변경되지 않고 힙 메모리에서 값이 삽입, 추가, 제거됩니다. 이번 포스팅에서는 StringBuilder 클래스 사용 방법을 설명합니다. 관련 포스팅 ☞ [C#]Mutable과 Immutable(가변과 불변) ☞ [C#]값 형식(Value Types)과 참조 형식(Reference Types) 목차 StringBuilder 객체 생성 및 초기화 StringBuilder 사이즈 StringBuilder 클래스의 메서.. C# 2022. 2. 5. [C#]List 특정 값 존재하는지 체크하는 방법 이번 포스팅은 C#의 List에서 특정 값이 존재하는지 체크하는 방법을 소개합니다. 목차 Contains() 함수 Exists() 함수 FindIndex() 함수 데이터 형식이 객체인 List Contains() 함수 Contains() 함수 구문은 다음과 같습니다. public bool Contains (T item); item은 List 에서 찾을 객체(또는 값)이며, item이 클래스의 객체 또는 배열과 같은 참조 타입에 대해서 값은 null이 될 수 있습니다. item이 존재하면 Contain() 함수는 True를 반환하고 그렇지 않으면 False를 반환합니다. 다음은 Contains() 함수 사용 예제입니다. class Program { static void Main(string[] args) .. C# 2022. 1. 24. [C#]Mutable과 Immutable(가변과 불변) 가변(Mutable)과 불변(Immutable) 가변(Mutable)은 "변경할 수 있는"을 의미하며, 불변(Immutable)은 "변경할 수 없는"을 의미하는 단어입니다. 이 단어는 프로그래밍 언어에서도 동일한 의미를 가집니다. 변경 가능한 타입은 인스턴스가 생성된 후 값이 변경될 수 있지만, 변경 불가능한 타입은 인스턴스가 생성된 후 값을 변경할 수 없는 타입입니다. C#에는 불변 클래스인 string과 가변 클래스인 StringBuilder가 존재하는데, 이번 포스팅에서는 string과 StringBuilder 클래스로 불변과 가변에 대해 설명합니다. string string은 변경할 수 없는 타입입니다. 문자열 변수는 스택(Stack)에 생성되며, 힙(Heap)에 생성되는 문자열 주소를 참조합니다.. C# 2022. 1. 18. [C#]인덱서 사용 방법 인덱서란? 인덱서(Indexers)는 클래스의 멤버로 클래스의 값을 배열처럼 접근할 수 있도록 해주는 문법입니다. 이번 포스팅에서는 인덱서 사용 방법을 소개합니다. 목차 인덱서를 사용하지 않는 경우 인덱서 정의 방법 인덱서를 사용하지 않는 경우 다음 예제처럼 배열은 인덱스를 사용하여 해당 위치의 값을 접근할 수 있습니다. class Program { static void Main(string[] args) { int[] numArray = { 1, 2, 3, 4 }; Console.WriteLine("0번째 인덱스의 값: " + numArray[0]); Console.WriteLine("2번째 인덱스의 값: " + numArray[2]); } } 실행 결과 다음은 클래스 인스턴스에서 객체를 배열처럼 사용.. C# 2022. 1. 17. [C#]열거형 사용 방법 열거형이란? 열거형(Enum)은 미리 정의된 상수들이 나열된 집합입니다. 예를 들어 요일이라는 열거형은 월, 화, 수, 목, 금, 토, 일만 될 수 있으며, 성별이라는 열거형은 알 수 없음, 남자, 여자만 될 수 있습니다. 이번 포스팅에서는 열거형에 대해 소개합니다. 목차 열거형의 필요성 열거형 특징 열거형에서 사용 가능한 함수 열거형의 필요성 다음은 열거형을 사용하지 않은 예제입니다. Person 클래스에는 Name과 Gender 속성이 존재하며, Gender의 값은 다음과 같이 정의됩니다. 0: 성별을 알 수 없음 1: 남자 2: 여자 0, 1, 2가 아닌 값은 잘못 입력된 값 public class Person { public string Name { get; set; } public int Gen.. C# 2022. 1. 17. [C#]Hashtable 사용 방법 Hashtable이란? C#의 Hashtable은 "Key-Value" 구조를 가지는 컬렉션입니다. 키(Key)는 데이터를 식별하기 위해 필요한 정보를 가지며, Hashtable에서 키는 모든 데이터 타입이 될 수 있습니다. 값(Value)은 키에 매핑되는 데이터입니다. 이번 포스팅에서는 Hashtable의 필요성과 사용 방법을 소개합니다. 목차 Array와 ArrayList의 문제점 Hashtable 사용 방법 Hashtable 객체에서 특정 키와 값이 존재하는지 체크 Array와 ArrayList의 문제점 Array 또는 ArrayList의 인덱스를 사용하여 "Key-Value" 구조를 만들 수 있습니다. 인덱스 위치를 Key라는 개념으로 접근하여 값을 설정하는 방법입니다. 하지만, 이 방법은 개발자.. C# 2022. 1. 12. [C#]콘솔(Console) 입력 및 출력 콘솔(Console)이란? 콘솔(Console) 클래스는 "System" 네임 스페이스에서 사용할 수 있습니다. 이 클래스는 콘솔 응용 프로그램에서 사용자 인터페이스를 구현할 수 있는 속성과 함수를 제공합니다. 콘솔 클래스에서 사용할 수 있는 모든 속성과 함수는 정적이므로 Console 인스턴스를 생성하지 않아도 Console 이름으로 속성과 함수를 사용할 수 있습니다. 이번 포스팅에서는 콘솔 클래스의 다양한 기능과 사용 방법을 소개합니다. 목차 Console 클래스의 속성 Console 클래스의 함수 Console 클래스 사용 방법 Console 클래스의 속성 속성(Property) 설명 Title 콘솔 응용 프로그램의 제목을 설정합니다. BackgroundColor 텍스트의 배경색을 설정합니다. Fo.. C# 2022. 1. 9. [C#]ToString 재정의 이번 포스팅에서는 C#에서 ToString() 함수를 재정의해야 하는 이유에 대해 소개합니다. 목차 ToString() 함수를 재정의해야 하는 이유 ToString() 함수 재정의 방법 Visual Studio에서 ToString() 함수 재정의 단축키 ToString() 함수를 재정의해야 하는 이유 C#에서 모든 자료형들은 최상위 클래스인 Object 클래스에서 파생됩니다. Object 클래스에는 값을 문자열로 반환하는 ToString() 함수가 존재하는데, 모든 자료형들은 Object 클래스에서 파생되므로 ToString() 함수를 사용할 수 있습니다. 다음 예제는 int형 변수에 ToString() 함수를 호출하여 값을 문자열로 반환합니다. int intValue = 10; string strVal.. C# 2022. 1. 9. [C#]Equals 재정의 이번 포스팅에서는 C#에서 Equals() 함수를 재정의해야 하는 이유에 대해 소개합니다. 목차 Equals() 함수와 == 연산자의 차이 Equals() 함수 재정의 방법 Equals() 함수와 == 연산자의 차이 C#의 자료형에 대해 공부하신 분들은 아시겠지만, C#에서 모든 자료형은 Object 클래스에서 직접 또는 간접적으로 상속됩니다. Object 클래스에는 Equals() 함수가 존재하는데, 모든 자료형은 Object 클래스에서 파생되므로 Equals() 함수를 사용할 수 있습니다. 다음은 == 연산자와 Equals() 함수를 사용하는 예제입니다. int a = 10; int b = 10; Console.WriteLine(a == b); // true Console.WriteLine(a.Equ.. C# 2022. 1. 9. [C#]checked, unchecked 키워드 checked와 unchecked 키워드란? C#에서 checked와 unchecked 키워드를 간략하게 설명하자면 정수 타입의 오버플로우 검사를 처리하기 위해 사용됩니다. 자세한 설명은 예제를 통해 살펴보도록 합니다. 목차 오버플로우란? checked 키워드 unchecked 키워드 오버플로우란? 오버플로우(overflow)는 정수 타입의 값이 해당 범위를 초과한 경우 예외를 발생시키지 않고 예상치 못한 결과 또는 쓰레기 값을 제공합니다. C#의 정수형은 총 10가지 타입이 존재합니다. ☞ .Net 공식문서 정수 타입 링크 sbyte 타입으로 설명드리자면, sbyte 타입이 표현할 수 있는 값은 -128 ~ 127 범위의 값입니다. sbyte 타입이 표현할 수 있는 최댓값은 127, 최솟값은 -128이.. C# 2021. 12. 29. [C#]정적 멤버(static member), 비정적 멤버(Non-static member) 정적 멤버와 비정적 멤버 클래스의 구성 요소는 정적 멤버와 비정적 멤버로 분류됩니다. 클래스의 멤버를 초기화 또는 사용하기 위해 인스턴스가 필요 없는 클래스의 멤버를 정적 멤버라고 정의하며, 클래스의 멤버 변수를 초기화 또는 사용하기 위해 인스턴스가 필요한 클래스의 멤버를 비정적 멤버라고 정의합니다. 이번 포스팅에서는 정적 멤버와 비정적 멤버에 대해 소개합니다. 목차 정적 변수와 비정적 변수 정적 메서드와 비정적 메서드 정적 생성자와 비정적 생성자 정적 클래스 정적 변수와 비정적 변수 static 한정자를 사용하여 선언되거나 static 함수 내부에 선언된 변수는 정적 변수로 간주하며, static 한정자를 사용하지 않고 선언된 변수는 비정적 변수로 간주됩니다. 다음은 정적 변수와 비정적 변수를 선언한 .. C# 2021. 12. 25. 이전 1 ··· 8 9 10 11 12 13 14 ··· 16 다음