[C#]TIL (23) | 2023.08.24

kjg5370·2023년 8월 24일
0

TIL

목록 보기
23/91
post-thumbnail

들어가기 앞서

강의의 주차가 올라갈 수록 제가 몰랐던 것에 대해 배우고 있어서 정말 어려운것 같습니다.
4주차부터는 여러번 복습을 해야 머리속에 들어올 것 같습니다.
다양한 기능들을 응용할 수 있도록 열심히 반복 숙달하겠습니다.

오늘 배운 것

고급 자료형 및 기능

  • Nullable 형

    • null : 값이 없음을 나타내는 특별한 값.
      참조 형식에 null을 할당하면 해당 변수는 어떤 객체도 참조하지 않는 상태가 됨.
      값 형식에 null을 직접 할당할 수는 없음.
      값 형식에 null을 할당하고 싶다면 Nullable 형식을 사용해야 함.

    • 예시 코드
      // 참조 형식에 null 할당
      string str = null;
      
      if (str == null)
      {
          Console.WriteLine("문자열이 null입니다.");
      }
      else
      {
          Console.WriteLine("문자열 값: " + str);
      }
      
      // Nullable 형식 사용
      int? nullableInt = null;
      
      if (nullableInt.HasValue)
      {
          int value = nullableInt.Value;
          Console.WriteLine("값: " + value);
      }
      else
      {
          Console.WriteLine("null 값");
      }
      
      // null 병합 연산자를 사용하여 기본값 할당
      int result = nullableInt ?? 0; // 값이 null이면 0을 사용
      Console.WriteLine("결과: " + result);
  • 문자열 빌더 (StringBuilder)

    • StringBuilder 클래스 : C#에서 문자열을 효율적으로 구축하기 위해 사용되는 클래스.

    • 새로운 문자열을 생성하는 string 클래스와 달리, StringBuilder는 내부적으로 가변 크기의 버퍼를 사용하여 문자열을 조작하므로 문자열을 여러 번 수정하는 작업에서 더 효율적.

    • 기본 사용 예시

using System;
using System.Text;

class Program
{	
	static void Main()
	{
    	// StringBuilder 인스턴스 생성
    	StringBuilder sb = new StringBuilder();

    	// Append 메서드를 사용하여 문자열 추가
    	sb.Append("Hello, ");
    	sb.Append("StringBuilder!");

    	// Insert 메서드를 사용하여 문자열 삽입
    	sb.Insert(7, "awesome ");

    	// Replace 메서드를 사용하여 문자열 치환
    	sb.Replace("StringBuilder", "C# StringBuilder");

    	// 문자열 출력
    	Console.WriteLine(sb.ToString()); // 출력: Hello, awesome C# StringBuilder!

    	// 문자열 길이 출력
    	Console.WriteLine("문자열 길이: " + sb.Length); // 출력: 문자열 길이: 29
	}
}

현재 진행 사항

  • 체크리스트
    • 개발 환경 설정
    • 기본 코드 구조
    • 변수와 자료형
    • 연산자 문자열 처리
    • 조건문과 반복문
    • 배열과 컬렉션
    • 매서드와 구조체
    • 클래스와 객체
    • 상속과 다형성
    • 고급 문법 및 기능
    • 인터페이스와 열거형
    • 예외 처리 및 값형과 참조형
    • 델리게이트, 람다 및 LINQ
    • 고급 자료형 및 기능 -> 여기까지 정리중
    • 알고리즘 기초
    • 정렬 알고리즘
    • 탐색 알고리즘
    • 고급 알고리즘
    • 문제해결 전략과 실전 연습 -> 현재 여기까지 강의 수강

내일 할 일

  • 하루 계획
    • 오전
      • 09:00 ~ 09:30 : 알고리즘 세션
      • 09:30 ~ 10:30 : 알고리즘 코드카타
      • 10:30 ~ 14:00 : 알고리즘 공부
      • 12시-1시: 점심식사
    • 집중 코딩
      • 14:00 ~ 18:00 : 동료 코드 분석
    • 저녁
      • 6시-7시: 저녁식사
      • 19:00 ~ 20:00 : 지급 받은 강의 복습
      • 20:00 ~ 20:30 : 6조 회의
      • 20:30 ~ 21:00 : TIL,마무리 회고 진행
profile
학생입니다

0개의 댓글