티스토리 뷰

공부기록/C#

[C#] 데이터 타입, 연산자, 분기반복점프문

까르보나라매콤하게 2022. 4. 28. 11:01

2일차 

2021 / 10 / 06 

 

예제 실행 및 학습 내용 정리 

  • 데이터 타입 

C#의 데이터 타입에는 부호가 있거나 없을 수 있다. Ex) sbyte(-128~127), byte(0~255) 

Char16비트인 것에 주의 

C++string 클래스 vs C#은 string 타입 

<Object메서드> 

메서드 
지정된 개체가 현재 개체와 같은지 확인합니다. 
지정한 개체 인스턴스가 동일한지 여부를 확인합니다. 
가비지 컬렉션이 회수하기 전에 개체가 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. 
기본 해시 함수로 작동합니다. 
현재 인스턴스의Type을 가져옵니다. 
현재 Object의 단순 복사본을 만듭니다. 
지정한 Object인스턴스가 동일한지 여부를 확인합니다. 
현재 개체를 나타내는 문자열을 반환합니다. 

 

리터럴 데이터 : var 사용 시 유용, decimal:M 

 

  • 변수 / 상수 / 열거형 

<로컬 변수 vs 전역 변수(필드) vs 정적 변수> 

정적 변수는 런타임 시 해당 타입 객체에 생성되어 프로그램이 종료될 때까지 유지됨 

 

  • Method1을 호출하면 전역 변수(필드)와 지역 변수의 값이 각각 출력됨 

 

<상수> 

const를 붙여 나타내며 컴파일 시 값이 결정됨. 필드 선언부와 메서드 내에서 선언 가능 

readonly를 이용해 상수와 비슷한 필드를 만들 수 있으며 런타임 시 값이 결정됨. 

 

<열거형> 

enum을 이용하여 const를 여러 개 담을 수 있음. 세미콜론 사용 X 

각 요소는 별도의 지정없이 0부터 시작해 1씩 증가된 값을 할당받음 

단, 지정된 요소 뒤에 지정되지 않은 요소가 온다면 지정된 요소의 값 + 1할당받음 

 

  • enum의 이름으로 타입이 지정되기 때문에 int 타입으로 사용하려면 int로 타입캐스팅 해야 함 

 

Flag enum 비트 연산을 위해 사용하며 각 비트별로 구분되는 2의 제곱값으로 지정됨 

[Flags]라는 Attribute를 지정해야함. 

 

  • OR 연산자로 다중 플래그 할당, AND 연산자나 HasFlag 함수로 특정 멤버를 포함하고 있는지 체크 

 

<값형과 참조형> 

값형(Value Type) : 복사본 전달 ex) 기본 데이터 형, 구조체, enum 

참조형(Reference Type) : 원본 전달, c#에서는 포인터의 개념이 없지만 포인터처럼 취급함 ex) 문자열, 배열 

 

  • Nullable 

값형은 원래 NULL을 가질 수 없지만 Nullable을 이용해 null을 할당 가능함 

NullableHasValue를 이용하여 NULL 상태를 체크할 수 있음 

 

  • 연산자 ??을 이용해 selected가 NULL인지 판별해 NULL이라면 false를 할당함 

 

  • 타입추론형 var 

var는 익명 타입이나 중첩된 제네릭, 타입명이 길때 유용하게 사용됨 

컴파일 시 타입 결정되며 지역변수에만 사용 가능 

 

 

 

  • 타입변환 (<-> 문자열) 

<수치형 타입변환> 

큰 타입 -> 작은 타입 = 자동 형변환 

작은 타입 -> 큰 타입 or 데이터 손실 가능성이 있는 경우 = 타입캐스팅 

 

 

<문자열 변환> 

다른 타입 -> 문자열 = ToString 이용 

문자열 -> 다른 타입 = 타입.Parse 이용, try ~ Parse 이용해 예외처리 필요 

 

 

  • 연산자 
  • 연산자 우선순위 

후위 단할 사칙연산 쉬프트 관계 같음 비트 논리 조건 대입 콤마 

 

  • 조건문 
  1. If ~ else if ~ else 
  1. switch 

 

 

  • 반복문 
  1. for 
  1. foreach (타입 a in array) : 배열이나 컬렉션에서 각 요소를 하나씩 꺼내옴 

 

 

  1. whilevs do ~ while : 조건식 동안 do ~ while문은 블록을 미리 한번 실행한다는 것이 차이점 

 

 

 

  • 점프문 

break 

 

 

continue 

 

 

goto : 특정 위치로 이동, 사용 추천 X 

 

 

return : 코드의 끝으로 향함, 함수 타입에 따라 return 다음의 값이 있을 수도 없을 수도 있음 

 

'공부기록 > C#' 카테고리의 다른 글

[C#] 배열, 컬렉션, 인덱서  (0) 2022.04.28
[C#] 추상클래스, 인터페이스, 델리게이트, 예외처리  (0) 2022.04.28
[C#] 클래스  (0) 2022.04.28
[C#] 메서드  (0) 2022.04.28
[C#] 데이터 타입 정리  (0) 2022.04.28
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
글 보관함