Menu
Coddy logo textTech

Koruyucu Yan Cümleler

Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 38 / 59.

Koruma koşulları, geçersiz koşulları denetleyen ve erken dönüş yapan bir metodun başındaki koşullu ifadelerdir. Önce uç durumları ele alarak kodun daha temiz ve okunabilir olmasına yardımcı olurlar.

Koruma koşulları olmayan bir yönteme bakalım:

public int divide(int num, int den) {
   if (den != 0) {
       if (num >= 0) {
           return num / den;
       } else {
           return -1;
       }
   } else {
       return -1;
   }
}

Koruma koşullarıyla aynı yöntem:

public int divide(int num, int den) {
   if (den == 0) return -1;
   if (num < 0) return -1;
   return num / den;
}

divide(10, 2) ile kodlardan herhangi birini çalıştırdıktan sonra sonuç şöyledir:

5

challenge icon

Görev

Kolay

validatePassword adında, bir argüman alan bir metot oluşturun:

  1. Doğrulanacak bir String (password)

Metot, parolayı doğrulamak için koruma koşulları kullanmalı ve şu kurallara göre bir mesaj dizesi döndürmelidir:

  • password null ise: "Password cannot be null" döndürün
  • password boş ise: "Password cannot be empty" döndürün
  • password uzunluğu 8'den küçük ise: "Password must be at least 8 characters" döndürün
  • password boşluk içeriyorsa: "Password cannot contain spaces" döndürün
  • Tüm kontroller başarılı olursa: "Valid password" döndürün

Kendin dene

import java.util.Scanner;

public class Main {
    public static String validatePassword(String password) {
        // Kodunuzu buraya yazın
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String password = scanner.nextLine();
        if (password.equals("null")) {
            password = null;
        }
        System.out.println(validatePassword(password));
    }
}
quiz iconKendini test et

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

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online Java derleyicisi