본문 바로가기
반응형

C#61

[C#] LinkedList<T>, LinkedListNode<T> LinkedList 클래스 LinkedList 클래스 (System.Collections.Generic) 이중 연결 목록을 나타냅니다. learn.microsoft.com - 이중 연결 목록(Doubly Linked List; 이중으로 연결된 목록) 자료 구조를 나타내는 제네릭 클래스 - 새 요소를 목록의 어디에나 빠르게 삽입 할 수 있음 - 색인을 통해서 직접 접근하지 못하기 때문에 검색은 느림, 이진 탐색 역시 불가 - 색인 접근이 불가능하므로 IList는 구현하지 않음 namespace System.Collections.Generic { public class LinkedList : ICollection, IEnumerable, IEnumerable, ICollection, IReadOnlyColl.. 2023. 9. 10.
[C#] IList<T>, IList IList 인터페이스 IList 인터페이스 (System.Collections.Generic) 개별적으로 인덱스에 의해 액세스될 수 있는 개체의 컬렉션을 나타냅니다. learn.microsoft.com public interface IList : ICollection, IEnumerable, IEnumerable { // 인덱서를 통해 특정 위치의 요소를 읽고 씀 T this[int index] { get; set; } // 선형(linear search)를 이용해서 목록의 특정 요소에 접근 // 지정된 요소를 찾지 못하면 -1 int IndexOf(T item); // 요소 삽입 void Insert(int index, T item); // 요소 제거 void RemoveAt(int index); } .. 2023. 9. 8.
[C#] ICollection<T>, ICollection ICollection, ICollection IEnumerable 인터페이스 (System.Collections.Generic) 지정된 형식의 컬렉션을 단순하게 반복할 수 있도록 지원하는 열거자를 노출합니다. learn.microsoft.com public interface ICollection : IEnumerable, IEnumerable { // 컬렉션의 크기를 파악 int Count { get; } // 읽기 전용 어부를 판단 bool IsReadOnly { get; } // 컬렉션에 항목을 추가 void Add(T item); // 컬렉션을 비움 void Clear(); // 주어진 항목(요소)이 컬렉션에 존재하는지 판단 bool Contains(T item); // 컬렉션을 배열로 복사하는 기.. 2023. 8. 31.
[C#] AppContext AppContext 클래스 AppContext 클래스 (System) 애플리케이션의 컨텍스트에 대한 데이터를 설정 및 검색하기 위한 멤버를 제공합니다. learn.microsoft.com - .NET 4.6 - 문자열 키들과 부울 값들로 이루어진 전역 사전(Dictionary) 하나를 제공 - 라이브러리의 소비자가 새 기능들을 선택적으로 켜고 끌 수 있도록 제공하는 표준적인 메커니즘 - SetSwitch * 스위치 설정 - TryGetSwitch * 스위치 확인 using System; namespace Practice { class Program { static void Main(string[] args) { bool isDefined; AppContext.TryGetSwitch("MyLibrary.S.. 2023. 8. 30.
[C#] Process Process 클래스 Process 클래스 (System.Diagnostics) 로컬 및 원격 프로세스에 대한 액세스를 제공하고 로컬 시스템 프로세스를 시작하고 중지할 수 있습니다. learn.microsoft.com namespace System.Diagnostics { public class Process : Component { // 속성, 주석 처리된 속성은 구버전에서 쓰던 것 public ProcessPriorityClass PriorityClass { get; set; } public bool PriorityBoostEnabled { get; set; } public int BasePriority { get; } public long PeakVirtualMemorySize64 { get; } .. 2023. 8. 29.
[C#] Environment Environment 클래스 Environment 클래스 (System) 현재 환경 및 플랫폼에 대한 정보 및 조작 방법을 제공합니다. 이 클래스는 상속될 수 없습니다. learn.microsoft.com - 유용한 여러 속성을 제공 - 파일과 폴더 * CurrentDirectory: 프로그램이 실행중인 디렉토리 주소의 풀 패스 * SystemDirectory: 시스템 디렉토리 * CommandLine: 프로그램 이름을 포함한 해당 프로세스의 명령줄 - 컴퓨터와 운영체제 * MachineName: 컴퓨터의 NetBIOS명 * ProcessorCount: CPU의 Core 수 * OSVersion: 현재 사용중인 시스템의 System.OperatingSystem 객체를 반환 * NewLine: 현재 사용중.. 2023. 8. 28.
[C#] Console Console 클래스 Console 클래스 (System) 콘솔 애플리케이션에 대한 표준 입력, 출력 및 오류 스트림을 나타냅니다. 이 클래스는 상속될 수 없습니다. learn.microsoft.com - 콘솔 기반 응용 프로그램의 표준 입출력을 처리 - 입력 * Read: 한 글자 -> int * ReadKey: 키 입력 인식 -> ConsoleKeyInfo * ReadLine: 한 줄 -> string - 출력 * Write: 개행 없이 출력 * WriteLine: 맨 끝에 개행을 붙혀 출력 - 콘솔 창의 위치와 크기 조회/변경 * WindowLeft: 버퍼에서의 상대적 X 위치(좌우 방향 스크롤) * WindowTop: 버퍼에서의 상대적 Y 위치(상하 방향 스크롤) * WindowWidth: 화면 .. 2023. 8. 27.
[C#] 순서 비교 (IComparable<T>, IComparable) 순서 비교 - 상대적 순서를 결정하는데 쓰이는 표준 프로토콜 * IComparable 인터페이스들 (System.IComparable, System.IComparable) * >, < 연산자 IComparable 인터페이스 (System) 값 형식 또는 클래스에서 해당 인스턴스를 정렬 및 순서 지정하기 위해 구현하는 일반화된 형식별 비교 메서드를 정의합니다. learn.microsoft.com IComparable 인터페이스 (System) 인스턴스를 정렬하는 형식 고유의 비교 메서드를 만들기 위해 값 형식 또는 클래스에서 구현하는 일반화된 비교 메서드를 정의합니다. learn.microsoft.com IComparable namespace System { public interface IComparab.. 2023. 8. 26.
[C#] 상등 비교 (IEquatable<T>) 상등 비교 값 상등 대 참조 상등 - 값 상등(Value Equality) - 참조 상등(Referential Equality) - 기본적으로 * 값 형식은 값 상등 * 참조 형식은 참조 상등 표준 상등 프로토콜 - == 연산자와 != 연산자 - 가상 Equals 메서드 - IEquatable 인터페이스 - 교체 가능(pluggable) 프로토콜들 - IStructuralEquatable 인터페이스 == 연산자와 != 연산자 - 연산자이기 때문에 그 의미가 정적으로 구현됨 - 비교를 수행할 형식을 컴파일 시점에서 결정 - 동적 다형성(virtual 메서드)이 고려되지 않음 가상 object.Equals 메서드 - System.Object에 정의되어 있으므로 모든 형식이 이 메서드를 제공함 - 실행 시점에.. 2023. 8. 25.
[C#] Guid Guid 구조체 Guid 구조체 (System) GUID(Globally Unique IDentifier)를 나타냅니다. learn.microsoft.com - 전 지구적으로 고유한 식별자(Globally Unique Identifier, GUID)를 나타냄 - 전 세계에서 고유할 것이 거의 확실한 16바이트 값 (2^128개) - 흔히 응용프로그램이나 데이터베이스에서 다양한 종료의 키로 쓰임. Guid 인스턴스 생성 - Guid.NewGuid - 생성자 1. byte[]: 16바이트 배열 2. string: 서식화된 문자열 3. etc... - ToByteArray: 바이트 배열로의 변환 - Guid.Empty: 모든 바이트가 0인 빈 Guid를 돌려줌(흔히 null값 대신 사용) using Syste.. 2023. 8. 24.
반응형