Field yang Bisa Kosong
Termasuk bagian List dan Layar dalam perjalanan Flutter di Coddy. Pelajaran 14 dari 33.
Tidak semua kontak memiliki email. Field yang bisa saja kosong memiliki ? setelah tipe datanya, dan nilainya adalah null jika tidak ada yang diberikan:
class Contact {
final String name;
final String? email;
Contact({required this.name, this.email});
}Tanpa required, email: boleh tidak dicantumkan: Contact(name: 'Alan Turing') memiliki nilai email berupa null.
Kamu tidak bisa memanggil method pada null, jadi Dart mencegahmu menulis contact.email.toLowerCase(). Gunakan ?. sebagai pengganti titik: contact.email?.toLowerCase() memanggil method jika ada email, dan menghasilkan null jika tidak ada. Lalu, ?? memilih nilai pengganti:
Text(contact.email?.toLowerCase() ?? 'No email')Tantangan
MudahEmail diketik dengan huruf kapital acak, dan Alan tidak memiliki email. Beri setiap tile subtitle: yang menampilkan email dalam huruf kecil, atau No email jika tidak ada.
Coba sendiri
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final List<Contact> contacts = [
Contact(name: 'Ada Lovelace', email: 'Ada@Example.com'),
Contact(name: 'Alan Turing'),
Contact(name: 'Grace Hopper', email: 'GRACE@NAVY.MIL'),
];
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(title: const Text('Contacts')),
body: ListView(
children: [
for (Contact contact in contacts)
ListTile(
title: Text(contact.name),
),
],
),
),
);
}
}
class Contact {
final String name;
final String? email;
Contact({required this.name, this.email});
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di List dan Layar
1Daftar yang Dapat Digulir
Daftar yang Bisa DigulirItem DaftarBagian Awal dan AkhirKetuk Item DaftarPemisah Antarbaris4Class Milikmu Sendiri
Class untuk DatamuParameter Bernama dan WajibField yang Bisa KosongWidget dari Data dengan mapFilter List dengan whereCari di MapLatihan sendiri: Compiler Flutter online