//function arguments
void fn1(String name, int age) {
print("My name is $name. I'm $age years old.");
}
//function return value
String fn2(String name, int age) {
return 'My name is $name. I\'m $age years old.';
}
//optional argument, default value
void fn3(int a, [int b = 0]) {
print('a: $a, b: $b');
}
//function named arguments, default value
void fn4(int a, {int b = 0}) {
print('a: $a, b: $b');
}
//function required named arguments
void fn5({required String name, required int age}) {
print('My name is $name. I\'m $age years old.');
}
//function named arguments, default values
void fn6({String name = '_', int age = 0}) {
print('My name is $name. I\'m $age years old.');
}
//function Null Safety
void fn7({String? name, int? age}) {
print('My name is ${name?? '_'} . I\'m ${age?? 0} years old.');
}
double fn8(List<double?>? values) {
var sum = 0.0;
if (values != null) {
for (var value in values) {
sum += value?? 0.0;
}
}
return sum;
}
//Fat arrow notation (=>)
int fn9(int x, int y){
return x + y;
}
int fn10(int x, int y) => x + y;
void fn11(int x, int y) => print(x + y);
//Inner functions
void fnOut(){
print('Out');
//..
void fnIn(){
print('In');
}
fnIn();
fnIn();
}
void main() {
fn1('Tom', 42);
print(fn2('Tom', 42));
fn3(5);
fn3(5, 5);
fn4(5);
fn4(5, b: 3);
fn5(name: 'Tom', age: 42);
fn6();
fn6(name: 'Tom');
fn6(age: 42);
fn6(name: 'Tom', age: 42);
fn7();
fn7(name: null, age: null);
print(fn8(null));
print(fn8([1, null, 3]));
print(fn9(5, 5));
print(fn10(5, 5));
fn11(5, 5);
fnOut();
}
воскресенье, 4 апреля 2021 г.
Functions
Подписаться на:
Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий