int number = 2;
if(number % 2 == 0) {
print('값이 짝수입니다.');
}else{
print('값이 홀수입니다.');
}
switch문
int number = 3;
switch(number % 3) {
case 0:
print('나머지가 0입니다.');
break;
case 1:
print('나머지가 1입니다.');
break;
default:
print('나머지가 2입니다.');
break;
}
for loop
int total = 0;
List<int> numbers = [1, 2, 3, 4, 5, 6];
for(int i =0; i< numbers.length; i++){
if(numbers[i] ==5) continue;
total += numbers[i];
}
print(total);
total = 0;
for(int number in numbers){
print(number);
total += number;
}
while loop
int total = 0;
while(total <10){
total += 1;
if(total == 5){
break;
}
}
print(total); // 10
total = 0;
do{
total += 1;
} while(total < 10);
print(total); // 10
parameter / argument - 매개변수 positional parameter - 순서가 중요한 파라미터 optional parameter - 있어도 되고 없어도 되는 파라미터 []
void main() {
addNumbers(10);
addNumbers(20,90,100);
}
// 세개의 숫자 (x, y, z)를 더하고 짝수인지 홀수인지 알려주는 함수
addNumbers(int x, [int y = 20, int z = 30]) {
int sum = x + y + z;
print('x : $x');
print('y : $y');
print('z : $z');
if(sum % 2 == 0){
print('짝수입니다.');
} else {
print('홀수입니다.');
}
}
named parameter - 이름이 있는 파라미터 (순서가 중요하지 않다.) default는 기본값 지정.
void main() {
addNumbers(y: 20,x: 10, z: 30);
}
addNumbers({
required int x,
required int y,
int z = 20,
}) {
int sum = x + y + z;
print('x : $x');
print('y : $y');
print('z : $z');
if(sum % 2 == 0){
print('짝수입니다.');
} else {
print('홀수입니다.');
}
}
arrow function
void main() {
addNumbers(10, y:20);
}
int addNumbers(int x, {
required int y,
int z = 30,
}) => x + y + z; // 반환값
typedef
void main() {
Operation operation = add;
int result = operation(10, 20, 30);
print(result);
operation = subtract;
int result2 = operation(10, 20, 30);
print(result2);
int result3 = calculate(30, 40, 50, add);
print(result3);
}
// signature
typedef Operation = int Function(int x, int y, int z);
int add(int x, int y, int z) => x + y + z;
int subtract(int x, int y, int z) => x - y - z;
int calculate(int x, int y, int z, Operation operation){
return operation(x, y, z);
}