반응형

C# 문자열

문자열은 일련의 문자로 구성되며, 각 문자는 0부터 시작하는 인덱스 값으로 참조할 수 있다.

예를 들어, "Hello"라는 문자열이 있다면 'H'는 인덱스 0, 'e'는 인덱스 1과 같은 방식이다.

 

또한, C#에서는 IndexOfSubstring이라는 두 가지 유용한 문자열 메소드를 제공한다.

IndexOf 메소드는 특정 문자나 문자열이 처음으로 출현하는 인덱스를 반환한다.

만약 해당 문자나 문자열이 존재하지 않는다면 -1을 반환한다. 아래 예시를 살펴보자.

 

예시:

string str = "Hello World";
int index = str.IndexOf('W'); // index는 6이 됩니다.

Substring 메소드는 문자열의 특정 부분을 추출하는 데 사용된다.

이 메소드는 두 가지 형태가 있다. 하나는 시작 인덱스만 지정하는 것이고,

다른 하나는 시작 인덱스와 길이를 모두 지정하는 것이다.

 

예시:

string str = "Hello World";
string sub = str.Substring(6); // sub는 "World"가 된다.
string sub2 = str.Substring(0, 5); // sub2는 "Hello"가 된다.

이러한 메소드들은 문자열을 다루는 데 있어 매우 중요하므로 잘 기억해두는 것이 좋다.

C# If 문

C#에서 if문은 주어진 조건이 참인 경우에만 코드 블록을 실행한다.
그런데 여러 조건을 확인해야 할 경우에는 if, else if, else 구조를 사용한다.


이 구조에서 if 문 다음에 오는 else if 문은 이전의 ifelse if 문의 조건이 거짓일 때만 확인된다.
그리고 else 문은 앞선 모든 조건이 거짓일 경우에 실행된다.

if (condition1)
{
    // 조건1이 참일 때 실행
}
else if (condition2)
{
    // 조건1이 거짓이고, 조건2가 참일 때 실행
}
else
{
    // 모든 조건이 거짓일 때 실행
}

또한 C#에서는 삼항 연산자를 사용하여 if-else 문을 간단하게 표현할 수 있다.
삼항 연산자는 "조건 ? 값1 : 값2"와 같은 형태로, 조건이 참일 경우 값1을, 거짓일 경우 값2를 반환한다.

var result = (condition) ? "참일 때의 값" : "거짓일 때의 값";

C# Switch문 정리

  • switch 문의 작동 원리: 주어진 조건에 따라 여러 코드 블록 중 하나를 실행.
  • break 키워드: switch 블록에서 더 이상의 코드 실행이나 케이스 테스트를 중단.
  • default 키워드: 모든 케이스와 일치하지 않을 때 실행될 코드를 지정.

예시코드

int day = 4; // 예를 들어, 오늘은 목요일
switch (day)
{
    case 1:
        Console.WriteLine("Monday");
        break;
    case 2:
        Console.WriteLine("Tuesday");
        break;
    case 3:
        Console.WriteLine("Wednesday");
        break;
    case 4:
        Console.WriteLine("Thursday"); // day 4에 해당하므로 "Thursday"가 출력.
        break;
    case 5:
        Console.WriteLine("Friday");
        break;
    case 6:
        Console.WriteLine("Saturday");
        break;
    case 7:
        Console.WriteLine("Sunday");
        break;
    default:
        Console.WriteLine("Looking forward to the Weekend."); // 일치하는 케이스가 없을 때 출력.
        break;
}
반응형
반응형

출처 : 프로그래머스

정리하자면, 두 정수(a, b)를 입력받고, 그것들을 두 번 붙인다.(ab, ba)

그중에서 더 큰 수를 출력하는 문제다.

입출력 예를 보면 이해하기 쉽다.

 

나의 풀이

using System;

public class Solution {
    public int solution(int a, int b) {
        int answer = 0;
       
        // 두 정수를 문자열로 더한 후 Int형 변수에 할당
        int str1 = Int32.Parse(a.ToString() + b.ToString());
        int str2 = Int32.Parse(b.ToString() + a.ToString());

        return answer;
    }
}

1. 먼저 입력받은 두 정수를 ToString함수를 이용해 각각 더했다. (ab 한 번, ba 한 번)

2. Int32.Parse함수로 덧셈식을 감싸서 String타입의 값을 Int 형으로 변환했다.

3. 변환된 값을 각각 Int형인 str1, str2 변수에 할당했다.

 

조건식

using System;

public class Solution {
    public int solution(int a, int b) {
        int answer = 0;
        // 두 정수를 문자열로 더한 후 Int형 변수에 할당
        int str1 = Int32.Parse(a.ToString() + b.ToString());
        int str2 = Int32.Parse(b.ToString() + a.ToString());
        
        // 조건식
        if(str1 > str2){
            answer = str1;
            }
        else if(str1 < str2){
            answer = str2;
            }
        else{
            answer = str1;
        }
        return answer;
    }
}

1. 첫 번째는 str1이 str2보다 큰 경우 answer 변수에 st1을 할당한다.

2. str1이 str2보다 작다면 answer 변수에 str2를 할당한다.

3. 이도 저도 아닌 경우(둘이 같은 경우)라면 answer 변수에 str1을 할당한다.

반응형
반응형
using System;

public class Example
{
    public static void Main()
    {
        // 특수문자 출력 코드
        Console.WriteLine("!@#$%^&*(\\'\"<>?:;");

    }
}
  • 츨력결과 !@#$%^&*(\'"<>?:;

 

C#에서 특수문자를 출력하는 방법

 

일반적으로 특수문자도 Console.writeLine함수로 출력이 가능합니다.

그러나 '(작은 따옴표), "(큰 따옴표)와 같은 특수문자는

문자열을 둘러싸는 기호로 사용되는데요.

그러므로 출력을 하기 위해서는 '이스케이프 문자(escape character)'를 사용해야 합니다.

 

이스케이프 문자(escape character)

 

이스케이프 문자는 문자열 내에서 특수한 의미를 가지는 문자를 나타내기 위해 사용됩니다.

백슬래시(\)기호와 함께 사용되며, 백슬래시 다음에 오는 문자는 일반 문자로 처리합니다.

 

C#에서 자주 사용되는 이스케이프 문자 모음

 

반응형

+ Recent posts