Ch04. 데이터를 가공하는 연산자
2020. 1. 7. 21:43ㆍC# 언어/이것이 C# 이다. 책정리
반응형
![](https://blog.kakaocdn.net/dn/r1nsC/btqAYo54TrQ/5Qhy2iAWapxQMUt5q4kWf0/img.png)
ch04 '연산자 다루기' 입니다
데이터를 가공하는 연산자에 대해 배웁니다.
'이것이 C#이다' 교재를 바탕으로 정리했습니다.
이전 정리글
ㅇ 산술 연산자 |
연산자 | 설명 | 지원 형식 |
+ | 양쪽 연산자를 더합니다. | 모든 수치 데이터 형식 |
- | 왼쪽에서 오른쪽 연산자를 차감합니다. | 모든 수치 데이터 형식 |
* | 양쪽 연산자를 곱합니다. | 모든 수치 데이터 형식 |
/ | 왼쪽에서 오른쪽 연산자를 나눈 몫 | 모든 수치 데이터 형식 |
% | 왼쪽에서 오른쪽 연산자를 나눈 나머지 | 모든 수치 데이터 형식 |
표에 언급한 모든 연산자 이용한 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | using System; namespace ArithmaticOperators { class MainApp { static void Main(string[] args) { int a = 111 + 222; Console.WriteLine($"a : {a}"); // 333 int b = a - 100; Console.WriteLine($"b : {b}"); // 233 int c = b * 10; Console.WriteLine($"c : {c}"); // 2330 double d = c / 6.3; Console.WriteLine($"d : {d}"); // 369.84~~ Console.WriteLine($"22 / 7 = {22 / 7}({22 % 7})"); // 3(1) } } } |
ㅇ 증가 연산자와 감소 연산자 |
연산자의 위치에 따라 방식이 달라짐
증가/감소 연산자를 변수의 뒤에 사용하면 해당 문장의 실행이 끝난 후에 변수의 값이 변경
변수의 앞에 사용하면 변수의 값을 변경한 후에 해당 문장이 실행
연산자 | 이름 | 설명 | 지원 형식 |
++ | 증가 연산자 | 피연산자의 값을 1 증가시킴 | 모든 수치,열거 형식 |
-- | 감소 연산자 | 피연산자의 값을 1 감소시킴 | 모든 수치,열거 형식 |
표에 언급한 모든 연산자 이용한 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | using System; namespace ArithmaticOperators { class MainApp { static void Main(string[] args) { int a = 10; Console.WriteLine(a++); // 10 Console.WriteLine(a--); // 12 Console.WriteLine(++a); // 12 Console.WriteLine(--a); // 10 } } } |
ㅇ 관계 연산자 |
두 피연산자의 사이 관계를 확인하는 연산자
연산자 | 설명 | 지원 형식 |
< | 왼쪽이 오른쪽 연산자보다 작으면 참, 아니면 거짓 | 모든 수치 형식과 열거 형식 |
> | 왼쪽이 오른쪽 연산자보다 크면 참, 아니면 거짓 | 모든 수치 형식과 열거 형식 |
<= | 왼쪽이 오른쪽 연산자보다 작거나 같으면 참, 아니면 거짓 | 모든 수치 형식과 열거 형식 |
>= | 왼쪽이 오른쪽 연산자보다 크거나 같으면 참, 아니면 거짓 | 모든 수치 형식과 열거 형식 |
== | 양쪽 연산자가 같으면 참 아니면 거짓 | 모든 데이터 형식에 대해 사용 가능 |
!= | 왼쪽이 오른쪽 연산자와 다르면 참, 아니면 거짓 | 모든 데이터 형식에 대해 사용가능. string와 object 형식에 대해서도 사용 가능 |
표에 언급한 모든 메소드 이용한 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | using System; using static System.Console; namespace ArithmaticOperators { class MainApp { static void Main(string[] args) { WriteLine($"{3 > 4}"); // flase WriteLine($"{3 >= 4}"); // false WriteLine($"{3 < 4}"); // true WriteLine($"{3 <= 4}"); // true WriteLine($"{3 == 4}"); // false WriteLine($"{3 != 4}"); // true } } } |
ㅇ 논리 연산자 |
참과 거짓으로 이루어지는 진리값이 피연산자인 연산
논리 곲
진리 값이 모두 참(True)이어야 그 결과가 참, 그 외에는 모두 거짓(False)
A | B | A && B |
참 | 참 | 참 |
참 | 거짓 | 거짓 |
거짓 | 참 | 거짓 |
거짓 | 거짓 | 거짓 |
논리 합
진리 값이 하나라도 참(True)이면 그 결과가 참, 그 외에는 거짓(False)
A | B | A || B |
참 | 참 | 참 |
참 | 거짓 | 참 |
거짓 | 참 | 참 |
거짓 | 거짓 | 거짓 |
부정 연산
진리값을 반대로 뒤집는다.
A | !A |
참 | 거짓 |
거짓 | 참 |
예제 코드
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 | using System; using static System.Console; namespace p127 { class Program { static void Main(string[] args) { WriteLine("----------"); WriteLine($"{1 > 0 && 4 < 5}"); // T WriteLine($"{1 > 0 && 4 > 5}"); // F WriteLine($"{1 == 0 && 4 > 5}"); // F WriteLine($"{1 == 0 && 4 < 5}"); // F WriteLine("----------"); WriteLine($"{1 > 0 || 4 < 5}"); // T WriteLine($"{1 > 0 || 4 > 5}"); // T WriteLine($"{1 == 0 || 4 > 5}"); // F WriteLine($"{1 == 0 || 4 < 5}"); // T WriteLine("----------"); WriteLine($"{!true}"); // F WriteLine($"{!false}"); // T } } } |
ㅇ 조건 연산자 |
조건 연산자의 첫 번째 변수인 조건식은 결과가 논리값이어야 함.
이 조건 식의 결과가 참이면 두 번째 매개 변수가 선택
거짓이면 세 번째 매개 변수가 선택
조건식 ? 참일_때의_값 : 거짓일_때의_값
int a = 30;
string result1 = a == 30 ? "삼십" : "삼십아님"; // result1는 "삼십"
int b = 40;
string result2 = b == 30 ? "삼십" : "삼십아님"; // result2는 "삼십아님"
ㅇ 널 조건부 연산자 |
널 조건부 연산자 ?. 는 C# 6.0에서 도입됨
객체의 멤버에 접근하기 전에 해당 객체가 null인지를 검사하여
그 결과가 참(null)이면 그 결과 null 반환
거짓이면 뒤에 지정된 멤버를 반환
예제 코드
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 | using System; using static System.Console; using System.Collections.Generic; using System.Collections; namespace NullConditiona10perator { class MainApp { static void Main(string[] args) { ArrayList a = null; a?.Add("축구"); // a?. 이 null을 반환하므로 Add() 메소드는 호출되지 않음 a?.Add("야구"); WriteLine($"Count : {a?.Count}"); // Count: 이외에 아무것도 출력하지 않음 WriteLine($"{a?[0]}"); WriteLine($"{a?[1]}"); a = new ArrayList(); // a는 이제 null이 아님 a?.Add("축구"); a?.Add("야구"); WriteLine($"Count : {a?.Count}"); // 출력성공 WriteLine($"{a?[0]}"); // 출력성공 WriteLine($"{a?[1]}"); // 출력성공 } } } |
반응형