Menu
CoddyTech

Boş Bırakılabilen Alanlar

Coddy'nin Flutter Journey'sinin Listeler ve Ekranlar bölümünün bir parçası. Ders 14 / 33.

Her kişinin bir e-posta adresi olmayabilir. Hiçbir değer taşımayabilecek bir alanın türünden sonra ? bulunur ve hiçbir değer verilmediğinde değeri null olur:

class Contact {
  final String name;
  final String? email;

  Contact({required this.name, this.email});
}

required olmadan email: belirtmeyebilirsiniz: Contact(name: 'Alan Turing') için email değeri null olur.

null üzerinde bir yöntemi çağıramazsınız; bu nedenle Dart, contact.email.toLowerCase() yazmanızı engeller. Nokta yerine ?. yazın: contact.email?.toLowerCase(), e-posta adresi varsa yöntemi çağırır, yoksa null verir. Ardından ?? bir yedek değer seçer:

Text(contact.email?.toLowerCase() ?? 'No email')
challenge icon

Görev

Kolay

E-posta adresleri rastgele büyük harflerle yazılmış ve Alan'ın e-posta adresi yok. Her kutucuğa, e-posta adresini küçük harflerle gösteren veya e-posta adresi yoksa No email gösteren bir subtitle: ver.

Kendin dene

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 iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Listeler ve Ekranlar bölümündeki tüm dersler

Kendi başına pratik yap: Online Flutter derleyicisi