C#문법을 배웠는데 한번에 들어온게 너무 많아서 정리를 좀 해야할것 같다.
전에 본것들은 다루지 않겠다.
Console.WriteLine("") = 실행하면 "~라고 콘솔창에 뜬다"
Console.Write() = 콘솔창에 뜨는건 같지만 줄을 바꾸지 않는다.
Console.ReadLine = 콘솔창에 사람이 쓰는 글을 받아서 활용가능.
int.parse, int.parse()= readline으로 받은 숫자는 숫자가 아닌 문자로 받아오기 때문에 숫자로 바꿀때 쓴다.
주석에도 종류가 있다.
// = 한줄 주석
/*
= 여러줄 주석
*/
\n = 새 줄(줄바꿈) 삽입
\r = 현재 줄 맨 앞으로 이동
\t = 탭 삽입
\b = 백스페이스 삽입
키워드 = 이미 C#에서 지정한 단어들은 변수로 지정할 수 없다.
var 키워드 = var 키워드로 변수를 선언하면 변수의 자료형이 컴파일러에 의해 자동으로 결정된다.
자료형이 10이면 int, 단어들은 string 이런식으로
논리연산자는 저번에 봤지만 까먹어서 다시
&& = 논리곱 = and
|| = 논리합 = or
! = 논리부정 = not
비트 연산자 = 비트 연산자는 데이터의 비트(bit) 단위로 연산을 수행하는 연산자다. 솔직히 아직 감이안옴
& = and = 두 비트 값이 모두 1일 때 1을 반환
| = or = 두 비트 값 중 하나라도 1일 때 1을 반환
^ = xor = 두 비트 값이 서로 다를 때 1을 반환
~ = not = 비트 값의 보수(complement)를 반환
<< = 왼쪽 시프트 = 비트를 왼쪽으로 이동
>> = 오른쪽 시프트 = 비트를 오른쪽으로 이동
복합 대입 연산자 = 복합 대입 연산자는 변수에 연산을 수행한 결과를 저장하는 연산자입니다.
연산자에도 우선순위가 있다. 복붙해서 가져와서보겠다.
1. 괄호 (): 괄호로 감싸진 부분은 가장 높은 우선순위로 먼저 계산됩니다.
2. 단항 연산자: 단항 연산자들(++, --, +, -, ! 등)은 괄호 다음으로 높은 우선순위를 가집니다.
3. 산술 연산자: 산술 연산자들(*, /, %, +, -)은 단항 연산자보다 우선순위가 낮습니다.
4. 시프트 연산자: 시프트 연산자(<<, >>)는 산술 연산자보다 우선순위가 낮습니다.
5. 관계 연산자: 관계 연산자들(<, >, <=, >=, ==, !=)는 시프트 연산자보다 우선순위가 낮습니다.
6. 논리 연산자: 논리 연산자들(&&, ||)는 관계 연산자보다 우선순위가 낮습니다.
7. 할당 연산자: 할당 연산자들(=, +=, -=, *=, /= 등)는 논리 연산자보다 우선순위가 낮습니다.
즉 () > +-! > */%+- > >><< > ><=! > &&|| > =+-*/ 라는건데 뭐지 외계언가
문자열 처리 기능 string str = "Hello, World!"에서
문자열 생성 = newstr
str1 + " " + str2로 연결 가능
string[] words = str.Split('ㅁ,ㅇ'); = 쉼표로 문자열을 구분하여 배열을 만듬 == str [1] = a str [2] = ㅇ
int index = str.IndexOf("World"); = str 에서 "World" 문자열의 첫 번째 인덱스를 찾아 index 변수에 저장
string newStr = str.Replace("World", "Universe"); = str에서 "World" 를 "Universe" 로 대체한 새로운 문자열 newStr생성bool isEqual = str1 == str2; = 문자열을 서로 비교 후 결과값 저장
스위치 식 = 위에서 내려가면서 조건에 맞으면 break = 스탑
switch ()
{
case 값1:
// 값1이 나온 경우 실행되는 코드
break;
case 값2:
// 값2가 나온 경우 실행되는 코드
break;
// ...
default:
// 모든 case문에 해당하지 않는 경우 실행되는 코드
break;
}
for 문의 기본식
for ( i = 0 =초기식; i < 10 = 조건식; ++ = 증감식)
i는 0이고 i가 10보다 작다면 ++
while ( 조건 ) = 조건이 참일동안 반복실행
while (i < 10)
{
i++;
} = while 이 10이 될때까지 1씩 더한다.
for 문은 반복 횟수를 직관적으로 알 수 있고, 반복 조건을 한 눈에 확인할 수 있어 가독성이 좋습니다.
while 문은 반복 조건에 따라 조건문의 실행 횟수가 유동적이며, 이에 따라 코드가 더 간결할 수 있습니다.
어떤 반복문을 사용할지는 코드의 흐름에 따라 상황에 맞게 선택하는 것이 좋습니다.
do-while 문
do
{
// 조건식이 참인 경우 실행되는 코드
}
while (조건식);
do-while문은 while문과 비슷하지만, 조건식을 검사하기 전에 먼저 코드 블록을 한 번 실행하는 점이 다름
for의 중첩
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 3; j++)
{
Console.WriteLine("i: {0}, j: {1}", i, j);
}
}
i 가 5미만이면 ++,하지만 j또한 3미만이면 ++
결과는?
0, 0 0, 1 0, 2
1, 0 1, 1 1, 2
2, 0 2, 1 2, 2
3, 0 3, 1 3, 2
4, 0 4, 1 4, 2 이렇게 15번 반복한다.
break = 반복문을 중지시키는 역할 == 아예 끝
continue = 현재 반복을 중지하고 다음 반복을 진행하는 역할 == 이번거 패스하고 다음거로 넘어가기
배열의 컬렉션
List = 가변적인 크기를 갖는 배열
List 1 2 3 중에 2를 삭제하면 List 1 3이 남는다.
Dictionary = 키와 값으로 구성된 데이터를 저장
Stack = 후입선출(LIFO) 구조를 가진 자료 구조
Queue =선입선출(FIFO) 구조를 가진 자료 구조
HashSet = 중복되지 않은 요소들로 이루어진 집합
메서드.
메서드란 특정 작업을 저장해두고 여러곳에서 사용 가능하게 만든 코드의 덩어리?
[접근 제한자] [리턴 타입] [메서드 이름]([매개변수])
{
// 메서드 실행 코드
}
접근 제한자 = public, static, private, protect
리턴타입 = 반환하는 값의 데이터 타입. 없을시 void
메서드 이름 = 메서드 이름
매개변수 = 메서드에 전달되는 입력 값
c# 강의 2강까지 들은걸 대충 정리해도 이정돈데
아직 3발 남았다.
살려줘