Menu
CoddyTech

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')
challenge icon

Tantangan

Mudah

Email 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});
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di List dan Layar

Latihan sendiri: Compiler Flutter online