1. 변수란?
변수는 데이터를 저장하는 공간이다. 쉽게 말해, '데이터를 담는 상자'라고 생각할 수 있다. 예를 들어, "나이"라는 이름의 상자를 만들고, 그 안에 25라는 숫자를 담는 것이다. 변수를 통해 저장된 데이터는 필요할 때 꺼내서 사용할 수 있다.
2. 변수 종류
1. 변경 가능한 변수 (변수)
- 형식:
[타입] [변수 이름] = [값];
- 예시:
int age = 30; String name = 'Bob'; bool isStudent = true;
타입 추론
- 변수에 값을 할당하면 컴퓨터가 타입을 자동으로 추론할 수 있다.
- 예시:
var name = 'Bob';
위와 같이 var를 사용하면, 값에 따라 타입이 자동으로 결정된다.
2. 변경 불가능한 변수 (상수)
- final 변수: 프로그램 실행 중 값이 결정되는 변수이다.
예시:
final firstCurrentTime = DateTime.now();
- const 변수: 프로그램 실행 전부터 값이 고정되는 변수이다 (컴파일 시점에 값이 결정된다).
- 예시:
const pi = 3.14159;
차이점
- final은 런타임 시점에 값이 결정되지만, const는 컴파일 시점에 값이 고정된다.
3. late 변수
- late는 초기화가 늦어지는 변수를 의미한다.
- 형식:
late [타입] [변수 이름];
- 초기화 시점이 늦어져도 null을 허용하지 않으며, 값을 사용하기 전에 반드시 초기화해야 한다.
- 예시:
late String description;
void main() {
description = '설명입니다.'; print(description); // 출력: 설명입니다.
}
3. 데이터 타입
타입은 변수에 저장될 수 있는 데이터의 종류를 말한다.
1. 숫자형
- int: 정수형 데이터이다.
예시:
int age = 25;
- double: 실수형 데이터 (소수점 포함)이다.
예시:
double pi = 3.14;
- num: int와 double의 상위 클래스 (모든 숫자 유형을 포함)이다.
- 예시:
num number = 2.5;
2. 문자형 (String)
- 문자열을 다루는 타입이다.
예시:
String name = 'Alice';
- 문자열 안에서 변수 값이나 표현식을 포함하려면 ${}를 사용한다.
예시:
String name = 'Bob'; print('Hello, my name is $name.');
3. 불리언형 (Boolean)
- true 또는 false 값을 가지는 타입이다.
예시:
bool isActive = true;
4. null
- 값이 없음을 나타내는 타입이다. ?를 사용해 변수에 null 값을 허용할 수 있다.
예시:
int? age = null;
4. 연산자 (Operators)
연산자는 데이터를 처리하거나 계산하는 데 사용되는 기호이다.
1. 산술 연산자
- +: 덧셈
- 예시:
print(2 + 3); // 출력: 5
- 예시:
- -: 뺄셈
- 예시:
print(5 - 3); // 출력: 2
- 예시:
- *: 곱셈
- 예시:
print(2 * 3); // 출력: 6
- 예시:
- /: 나눗셈
- 예시:
print(5 / 2); // 출력: 2.5
- 예시:
- ~/: 나누기 후 정수 부분만 반환
- 예시:
print(5 ~/ 2); // 출력: 2
- 예시:
- %: 나머지
- 예시:
print(5 % 2); // 출력: 1
- 예시:
print(2 + 3); // 출력: 5
2. 비교 연산자
- ==: 두 값이 같으면 true, 다르면 false
- 예시:
print(4 == 4); // 출력: true
- 예시:
- !=: 두 값이 다르면 true, 같으면 false
- 예시:
print(4 != 5); // 출력: true
- 예시:
- >: 왼쪽이 크면 true
- 예시:
print(5 > 2); // 출력: true
- 예시:
- <: 왼쪽이 작으면 true
- 예시:
print(2 < 5); // 출력: true
- 예시:
- >=: 왼쪽이 크거나 같으면 true
- 예시:
print(5 >= 5); // 출력: true
- 예시:
- <=: 왼쪽이 작거나 같으면 true
- 예시:
print(2 <= 5); // 출력: true
- 예시:
6. 조건문 (if 문)
조건문은 주어진 조건에 따라 코드를 실행하거나 실행하지 않도록 제어하는 문법이다.
기본 if 문
주어진 조건이 true일 때 실행되는 구문이다.
if (조건) { // 조건이 true일 때 실행될 코드 }
else 문
조건이 false일 때 실행되는 구문이다.
if (조건) { // 조건이 true일 때 실행될 코드 } else { // 조건이 false일 때 실행될 코드 }
else if 문
여러 조건을 확인할 때 사용하는 구문이다.
if (조건1) { // 조건1이 true일 때 실행될 코드 } else if (조건2) { // 조건2가 true일 때 실행될 코드 } else { // 조건1, 조건2 모두 false일 때 실행될 코드 }
예시
int age = 18; if (age >= 18) { print('성인입니다.'); } else { print('미성년자입니다.'); }
- 출력: 성인입니다.
7. 반복문 (for, while)
반복문은 주어진 조건에 따라 반복적으로 코드를 실행할 때 사용된다.
for 문
일정한 횟수만큼 반복하는 데 사용된다.
for (초기화; 조건; 증감식) { // 반복할 코드 }
예시
for (int i = 1; i <= 5; i++) { print(i); }
- 출력:
1 2 3 4 5
while 문
주어진 조건이 true인 동안 반복된다.
while (조건) { // 반복할 코드 }
예시
int i = 1; while (i <= 5) { print(i); i++; }
- 출력:
1 2 3 4 5
do-while 문
조건을 체크한 후 실행되므로, 조건이 false여도 코드가 최소 한 번은 실행된다.
do { // 반복할 코드 } while (조건);
예시
int i = 1; do { print(i); i++; } while (i <= 5);
- 출력:
1 2 3 4 5
8. 주석 (Comments)
주석은 코드에서 실행되지 않는 설명을 추가할 때 사용된다. 코드의 가독성을 높이기 위해 작성하는 경우가 많다.
한 줄 주석
한 줄만 설명을 추가할 때 사용된다.
// 이것은 한 줄 주석입니다.
여러 줄 주석
여러 줄에 걸쳐 설명을 추가할 때 사용된다.
/* * 이것은 여러 줄 주석입니다. * 코드 블록 설명을 넣을 때 유용합니다. */
예시
// 이 변수는 나이를 저장합니다. int age = 25; /* 이 함수는 사용자 이름을 출력하는 함수입니다. 아래의 print문을 통해 이름을 출력합니다. */ void printName() { String name = 'Alice'; print(name); }
'flutter앱개발과정' 카테고리의 다른 글
dart문법 함수형 프로그래밍 (0) | 2025.03.12 |
---|---|
dart문법 심화 공부 기록 (0) | 2025.03.11 |
dart문법 복습 - inflean강의 (0) | 2025.03.06 |
flutter 앱개발 - MacOS 환경세팅 (0) | 2025.03.05 |
flutter 앱개발 - kotlin 버전 불일치 오류 해결 (1) | 2025.03.03 |