Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#

  1. C#의 키 기반 I/O 컬렉션(SortedList)이란? 개념부터 예제까지

    C#에서 키 기반 I/O 컬렉션은 바로 SortedList를 의미합니다.SortedList<TKey,TValue>SortedList 클래스는 키-값(key-value) 쌍으로 구성된 컬렉션을 나타냅니다. 이 컬렉션은 키를 기준으로 자동 정렬되며, 키 또는 인덱스 두 가지 방식으로 요소에 접근할 수 있습니다.다음과 같이 Add() 메서드를 사용하여 키와 값을 함께 추가할 수 있습니다.s.Add(Sub1, Physics); s.Add(Sub2, Chemistry); s.Add(Sub3, Biology); s.Add(Sub4,

  2. C# 식별자(Identifier)란 무엇일까? 명명 규칙과 예제 총정리

    식별자(Identifier)는 클래스, 변수, 함수 등 사용자가 직접 정의하는 모든 요소를 구분하고 지칭하기 위해 붙이는 이름입니다. C#에서 식별자를 만들 때는 반드시 지켜야 하는 기본적인 명명 규칙이 있으며, 이를 어기면 컴파일 오류가 발생합니다. C# 식별자의 기본 명명 규칙 식별자는 반드시 문자로 시작해야 하며, 그 뒤에는 문자, 숫자(0~9), 밑줄(_)이 올 수 있습니다. 단, 첫 글자는 숫자로 시작할 수 없습니다. 이름 안에 공백이나 특수문자(? - + ! @ # % ^ & * ( ) [ ] { } . ;

  3. C# Nullable(널 허용) 형식 완벽 정리: 개념, 문법, 예제까지 한눈에

    C# Nullable 형식이란?C#에서 Nullable(널 허용) 형식은 해당 데이터 형식이 가질 수 있는 일반적인 값 범위에 더해, null 값까지 할당할 수 있도록 지원하는 특수한 데이터 형식입니다.예를 들어, Nullable<int> 변수에는 -2,147,483,648부터 2,147,483,647 사이의 정숫값뿐만 아니라 null도 저장할 수 있습니다. 마찬가지로 Nullable<bool> 변수에는 true, false, 그리고 null 세 가지 값을 모두 할당할 수 있습니다.이러한 기능은 데이터베이스의

  4. C# 동적(dynamic) 데이터 형식이란? 개념부터 사용법까지 쉽게 이해하기

    C#의 동적(dynamic) 데이터 형식이란?C#에서 동적(dynamic) 형식은 하나의 변수에 어떤 종류의 값이든 저장할 수 있는 특별한 데이터 형식입니다. 가장 큰 특징은 이러한 변수에 대한 타입 검사(type checking)가 컴파일 시점이 아닌 런타임(실행 시점)에 수행된다는 점입니다.즉, 컴파일러는 dynamic 변수가 실제로 어떤 타입의 값을 담고 있는지 확인하지 않으며, 프로그램이 실행되는 순간에 비로소 해당 값의 실제 타입이 결정되고 검증됩니다.동적 형식 선언 문법동적 형식 변수는 다음과 같은 문법으로 선언합니다.d

  5. C# 오버로드된 인덱서(Indexer)란? 개념부터 예제까지 총정리

    인덱서(Indexer)란 무엇인가?C#에서 인덱서(indexer)는 객체를 배열처럼 인덱스로 접근할 수 있도록 해주는 특별한 멤버입니다. 클래스에 인덱서를 정의하면 해당 클래스는 마치 가상 배열(virtual array)처럼 동작하며, 배열 접근 연산자인 대괄호([ ])를 사용해 인스턴스의 요소에 읽기·쓰기를 수행할 수 있습니다.인덱서는 메서드 오버로딩처럼 오버로드(overload)가 가능합니다. 즉, 하나의 클래스 안에 매개변수의 타입이나 개수가 서로 다른 여러 개의 인덱서를 선언할 수 있으며, 각 매개변수는 서로 다른 자료형을

  6. C# 리터럴(Literal)이란? 정수·실수·문자열 리터럴 완벽 정리

    리터럴(literal)은 코드에 직접 작성되는 고정된 값을 의미합니다. 상수(constant)는 프로그램이 실행되는 동안 변경할 수 없는 고정값을 가리키며, 이러한 값들이 바로 리터럴입니다.상수는 정수 상수, 부동 소수점 상수, 문자 상수, 문자열 리터럴처럼 기본 데이터 타입 중 어떤 것이든 될 수 있으며, 그 외에도 열거형(enum) 상수도 존재합니다.이번 글에서는 C#에서 가장 많이 사용되는 정수 리터럴, 실수(부동 소수점) 리터럴, 문자열 리터럴에 대해 자세히 알아보겠습니다.정수 리터럴(Integer Literals)정수 리터

  7. C#에서 문자열을 제목 대소문자(Title Case)로 변환하는 방법

    C#에서 제목 대소문자(Title Case)란?제목 대소문자(Title Case)란 각 주요 단어의 첫 글자를 대문자로 표기하는 방식을 말합니다. C#에서는 ToTitleCase 메서드를 사용하면 단어의 첫 글자를 손쉽게 대문자로 변환할 수 있습니다.다음 예제를 통해 문자열을 제목 대소문자로 변환하는 방법을 살펴보겠습니다.예제using System;using System.Globalization;class Demo {   static void Main() {      string str

  8. C# 람다 식(Lambda Expression)이란? 개념부터 예제까지 쉽게 이해하기

    C#의 람다 식(lambda expression)은 익명 함수를 간결하게 표현하는 패턴으로, 대리자(delegate)나 식 트리(expression tree)에 할당할 수 있는 코드를 정의할 때 사용됩니다. 람다 식은 식(expression) 컨텍스트에서 => 토큰을 사용하며, 이 기호는 goes to(~로 이동한다) 연산자라고 읽고 람다 식을 선언할 때 활용됩니다. 람다 식의 기본 구조 람다 식은 일반적으로 다음과 같은 형태를 가집니다. (입력 매개변수) => 식 또는 문 블록 예를 들어 x => x % 2 ==

  9. C# Hashtable vs Dictionary: 차이점과 사용 기준 완벽 정리

    C#에서 키-값 쌍 데이터를 다룰 때 가장 많이 비교되는 두 컬렉션이 바로 Hashtable과 Dictionary입니다. 두 클래스는 비슷한 용도로 사용되지만, 스레드 안전성, 제네릭 지원 여부, 성능 등에서 중요한 차이가 있습니다. 각각의 특징을 자세히 살펴보겠습니다. Hashtable이란? Hashtable은 키(key)를 사용하여 요소에 접근해야 하는 상황에서 활용되는 컬렉션입니다. 해시테이블의 각 항목은 키/값 쌍으로 구성되며, 이 키를 통해 컬렉션 내부의 요소에 접근하게 됩니다. Hashtable의 주요 특징은 다음과

  10. C#에서 문자(char)를 증가시키는 방법 완벽 가이드

    C#에서는 char 타입의 문자를 아주 간단하게 증가시킬 수 있습니다. 문자를 증가시키면 해당 문자의 다음 문자(아스키 코드 기준)로 이동하게 됩니다. 예를 들어 K를 증가시키면 L이 됩니다.문자 선언하기먼저 문자 변수를 하나 선언합니다.char ch = K;증가 연산자(++)로 문자 증가시키기선언한 문자 변수에 증가 연산자를 사용하면 손쉽게 다음 문자로 이동할 수 있습니다.ch++;C#에서 char는 내부적으로 유니코드(UTF-16) 코드 값을 저장하기 때문에, 증가 연산을 적용하면 코드 값이 1만큼 늘어나 다음 문자가 됩니다.

  11. C# 이스케이프 문자 종류와 출력 방법 총정리

    C#에서 이스케이프 문자(Escape Character)는 탭, 줄 바꿈, 벨 소리처럼 키보드로 직접 입력하기 어려운 특수 문자를 표현할 때 사용합니다. 역슬래시(\) 뒤에 특정 문자를 조합하여 작성하며, 특히 정규식(Regular Expression)에서 제어 문자를 다룰 때 유용하게 활용됩니다.아래 표는 C#에서 사용할 수 있는 대표적인 이스케이프 문자와 각각의 설명, 그리고 실제 화면에 어떻게 표시되는지를 정리한 것입니다.이스케이프 문자설명패턴표시 결과\a벨(Bell) 문자 \u0007과 일치합니다.\aWarning! + \u

  12. C# 콘솔에서 사용자 입력을 읽는 방법

    C#에서 콘솔로부터 입력을 받으려면 ReadLine() 메서드를 사용합니다. 이 메서드는 입력값을 항상 문자열(string) 형태로 반환하기 때문에, 숫자 등 다른 타입으로 사용하려면 반드시 형 변환 과정이 필요합니다.예를 들어, 사용자로부터 정수를 입력받아 이를 int 타입으로 변환하는 방법을 살펴보겠습니다.1. 사용자 입력 읽기먼저 ReadLine() 메서드로 콘솔 입력을 문자열 변수에 저장합니다.string val; Console.Write(Enter integer: ); val = Console.ReadLine();2. 문자

  13. C# 형 변환(Type Conversion) 완벽 가이드: 암시적 변환과 명시적 변환

    C#에서 한 데이터 타입을 다른 데이터 타입으로 바꾸는 과정을 형 변환(Type Conversion)이라고 합니다. C#은 크게 두 가지 방식의 형 변환을 지원합니다.1. 암시적 형 변환 (Implicit Type Conversion)암시적 형 변환은 개발자가 별도의 코드를 작성하지 않아도 C# 컴파일러가 자동으로 수행하는 변환입니다. 이 변환은 항상 타입 안전(type-safe)한 방식으로 이루어지며, 데이터 손실이 발생하지 않는 경우에만 적용됩니다.대표적인 예는 다음과 같습니다.작은 정수 타입에서 큰 정수 타입으로의 변환 (예:

  14. C# 정수 리터럴(Integer Literal)이란? 개념부터 접미사 활용까지 총정리

    C#에서 정수 리터럴(Integer Literal)은 소스 코드에 직접 작성되는 정수형 상수를 의미합니다. 정수 리터럴은 10진수(decimal) 또는 16진수(hexadecimal) 형태로 표현할 수 있습니다.리터럴 앞에 붙는 접두사(prefix)는 진법을 지정하는 역할을 합니다. 16진수에는 0x 또는 0X를 붙이고, 10진수에는 별도의 접두사가 없습니다. 또한 리터럴 뒤에는 U(unsigned, 부호 없는 정수)와 L(long)을 조합한 접미사(suffix)를 붙여 자료형을 명확하게 지정할 수 있습니다.정수 리터럴 예시대표적인

  15. C# 파일 작업 완벽 정리: FileStream 클래스로 배우는 파일 입출력 기초

    C#의 주요 파일 작업 C#은 프로그램이 외부 파일과 상호작용할 수 있도록 다양한 파일 작업 기능을 제공합니다. 대표적인 파일 작업은 다음과 같습니다. 파일 생성, 열기, 읽기 및 쓰기 기존 파일에 내용 추가(Append) 파일 삭제 등 FileStream 클래스란? System.IO 네임스페이스에 포함된 FileStream 클래스는 파일을 읽고, 쓰고, 닫는 작업을 수행하는 핵심 클래스입니다. 이 클래스는 추상 클래스인 Stream을 상속받아 구현됩니다. 새 파일을 생성하거나 기존 파일을 열려면 먼저 FileStream 객체

  16. C# 암시적 형식 변환(Implicit Conversion)이란? 개념과 예제로 쉽게 이해하기

    C#에서 형식 변환(Type Conversion)은 크게 암시적 변환(Implicit Conversion)과 명시적 변환(Explicit Conversion) 두 가지 방식으로 나뉩니다.암시적 형식 변환이란?암시적 형식 변환은 개발자가 별도의 코드를 작성하지 않아도 C# 컴파일러가 자동으로 수행하는 변환을 의미합니다. 이 과정은 항상 타입 세이프(type-safe)하게 진행되기 때문에 데이터 손실이나 오류가 발생하지 않습니다.대표적인 암시적 변환의 예는 다음과 같습니다.작은 정수형에서 큰 정수형으로의 변환 (예: int → long

  17. C# 혼합 배열(Mixed Array)이란? 개념과 대체 방법까지 한눈에

    C# 혼합 배열(Mixed Array)이란?혼합 배열은 다차원 배열(multi-dimensional array)과 가변 배열(jagged array)을 결합한 형태의 배열입니다. 여러 차원을 가지면서도 각 행마다 서로 다른 길이의 하위 배열을 포함할 수 있는 유연한 구조를 의미합니다.참고: .NET 4.0 업데이트에서 해당 타입이 제거되면서 혼합 배열은 현재 폐기된(obsolete) 기능입니다. 따라서 새로운 프로젝트에서는 사용하지 않는 것이 좋습니다.혼합 배열 선언 방법과거에는 object 타입 배열을 활용해 서로 다른 자료형을

  18. C#에서 객체(Object)란 무엇일까? 개념부터 예제까지 한 번에 이해하기

    C#에서 객체란 무엇인가?C#을 비롯한 모든 객체 지향 프로그래밍(OOP) 언어에는 객체(Object)와 클래스(Class)라는 핵심 개념이 존재합니다. 객체는 실제 세계에 존재하는 실체(entity)를 표현하며, 클래스의 인스턴스(instance)라고 부릅니다. 쉽게 말해 클래스는 설계도이고, 객체는 그 설계도를 바탕으로 실제로 만들어진 물건이라고 이해하면 됩니다.클래스 내부에 선언된 변수나 메서드 같은 멤버(member)에 접근하려면 반드시 객체를 통해야 합니다. 이때 사용하는 것이 바로 마침표(.) 연산자입니다. 마침표 연산자

  19. C# object 데이터 형식이란? 개념부터 박싱·언박싱까지 쉽게 이해하기

    C#에서 object 형식은 값 형식(value type), 참조 형식(reference type), 미리 정의된 형식, 사용자 정의 형식 등 모든 형식의 값을 할당할 수 있는 특별한 데이터 형식입니다. 다만 값을 할당하기 전에는 반드시 형식 변환(type conversion) 과정이 필요합니다.object 형식의 기본 개념object 형식은 C# 공용 형식 시스템(Common Type System, CTS)에서 모든 데이터 형식의 최상위 기본 클래스입니다. 즉, C#의 모든 형식은 궁극적으로 object에서 파생됩니다. 여기서 o

  20. C# 중첩된 네임스페이스(Nested Namespace)란? 개념과 사용 예제 완벽 정리

    C#에서 네임스페이스 안에 또 다른 네임스페이스를 선언하는 것을 중첩된 네임스페이스(Nested Namespace)라고 합니다. 이는 주로 코드를 논리적으로 구조화하고, 관련된 클래스들을 계층적으로 관리하기 위해 사용됩니다.중첩된 네임스페이스의 기본 구조먼저 외부(Outer) 네임스페이스는 다음과 같이 선언합니다.namespace outer {}그리고 그 내부에 내부(Inner) 네임스페이스를 선언할 수 있습니다.namespace inner { public class innerClass { public void

Total 2668 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:20/134  20-컴퓨터/Page Goto:1 14 15 16 17 18 19 20 21 22 23 24 25 26