Java-da işi dəyişdirin


JavaBaxılıb 38

Java-da keçid vəziyyəti ifadəsi əvvəlki təlimdə gördüyümüz if-else əgər nərdivana bənzəyir. Bir çox şərtimiz olduqda və hər birinin fərqli bir tapşırığı olduqda, java-da keçid vəziyyətindən istifadə edirik. Bu başqa bir Şərti və ya Qərar vermə ifadəsidir. Yalnızca eyni məlumat növündən istifadə etdiyimiz halda nərdivan olduqda java-da keçid işi daha effektiv və oxunaqlıdır. Ifadələri təsdiqləməyimiz lazım olduqda if-else istifadə edirik.

sintaksis

Aşağıda Java-dakı açar halının sintaksisidir. Hər birinin bənzərsiz bir dəyəri olan birdən çox iş ifadəsi ola bilər. Keçid ifadəsi və ya dəyişən hər bir vəziyyət dəyişənini təsdiqləyir və uyğunluğu olan işi icra edir.

switch(variable) {
case value1:
  //code
  break; //optional
case value2:
  //code
  break; //optional
default:
  //code

}

Java-da keçid vəziyyətinin xüsusiyyətləri

  • Java-da bir keçid vəziyyətində birdən çox iş ifadəsi ola bilər.
  • hər hal ifadəsi var unikal təkrarlanan dəyərlərə icazə vermədiyi deməkdir.
  • Dava dəyəri hərfi və ya sabit olmalıdır və dəyişən ola bilməz.
  • A-nın olması isteğe bağlıdır sındırmaq hər iş ifadəsi içərisində ifadə.
  • Bir keçid ifadəsinin parametri hər hansı bir dəyişən və ya tam ifadə ola bilər.
  • The ifadəni dəyişdirin ya tam dəyərlər, sətir, simvol, bayt, qısa, uzun və ya saydan ibarət ola bilər
  • Dava dəyəri keçid ifadəsi tipinə uyğun olmalıdır.
  • Java dəstəyində vəziyyəti dəyişdirin default isteğe bağlı hal dəyəri.
  • Bir halın tam ədədi olduqda, mütləq artan qaydada deyil, istənilən qaydada yaza bilərik.
  • Java-da keçid vəziyyəti də dəstəkləyir iç içə başqa bir açar qutusu içərisində bir açar qutusu deməkdir.

Flowchart

Java-da işi dəyişdirinPin

 

Birincisi, bu açar kassa javada ifadəni və ya dəyişəni qiymətləndirir. Sonra birinci haldan başlayaraq dəyişən dəyərin ilə uyğun olub olmadığını yoxlayır hal dəyər. Uyğundursa, bu işin içindəki kodu yerinə yetirir. Varsa sındırmaq ifadəsi, açar kassasının icrasını dayandırır və açar kassasından çıxır. Bu, digər iddia ifadələrini görməməzlikdən gəldiyini göstərir. Fərz edək ki, dəyər birinci hal dəyəri ilə uyğun gəlmirsə, sonrakı hal dəyərlərini yoxlayır və müvafiq ifadəni icra edir. Əgər fasilə ifadəsi yoxdursa, bütün digər iddia ifadələrini də sona qədər icra edir. Java-dakı keçid könüllü ola bilər default hal

Java-da sadə keçid işi

Java-da bir keçid qutusunun sadə bir nümunəsini görək. Tam bir dəyişən var nömrə dəyəri 3 kimi. Bu dəyişəni keçid ifadəsinə ötürürük. Hər bir hal dəyəri a ilə yanaşı fərqli bir tam ədədi var default iş. Bu iş ifadələrinin artan sırada olması vacib deyil. Birincisi, qiymətləndirir hal 1, dəyər 3-ə bərabər olmadığından, doğrulanır 2 halda. Bu da bərabər olmadığına görə ifadəni default vəziyyət.

Java-dakı keçid işi default halda halların heç biri keçid qutusundakı ifadə və ya dəyişənlə uyğun olmadıqda.

public class SimpleSwitchCaseDemo {

  public static void main(String[] args) {
    int number = 3;
    switch(number) {
    case 1:
      System.out.println("Case 1 Value is " + number);
    case 2:
      System.out.println("Case 2 Value is " + number);
    default:
      System.out.println("Default Value is " + number);
    }
  }

}
Default Value is 3

Durum ifadəsi ilə iş nümunəsini dəyişdirin

Əvvəlcə java-da bir sındırmaq bəyanat. Aşağıdakı kodda a Sim “kimi dəyişənqırmızı“. Keçid ifadəsində bu dəyişəni ötürürük rəng yəni hər hansı bir vəziyyət ifadəsi rəng dəyişəninə uyğun bir dəyərə sahibdirsə, o halda ifadəni icra edir. Burada keçid ifadəsi ilə uyğun gəlir halda qırmızı. Beləliklə, çıxışda “Qırmızı rəng seçdiniz” ifadəsinin göründüyünü görə bilərik. Dava ifadələrinin heç birində break ifadəsini istifadə etmədiyimiz üçün java-dakı switch case bütün hal ifadələrini icra edir.

public class SwitchCaseBreakDemo {

  public static void main(String[] args) {
    String color = "red";
    switch(color) {
    case "red":
      System.out.println("You have selected red color");
    case "green":
      System.out.println("You have selected green color");
    case "blue":
      System.out.println("You have selected blue color");
    default:
      System.out.println("No matching color");
    }

  }

}
You have selected red color
You have selected green color
You have selected blue color
No matching color

İndi bir düşündüyümüzü düşünək sındırmaq bütün vəziyyət ifadələrində ifadə, Çıxışın necə göstərildiyini görək. Bu vəziyyətdə yalnız içindəki ifadəni görə bilərik halda qırmızı göstərilir. Bir fasilə bəyanatımız olduğundan java-dakı keçid işi, standart vəziyyət daxil olmaqla bütün digər halları nəzərə almır. Bu şəkildə icra açar qutusundan çıxır.

Sındırmaq başqa hallarda uyğunsuzluğu yoxlamadığına görə bəyanat çox icra müddətinə qənaət edir.

public class SwitchCaseBreakDemo {

  public static void main(String[] args) {
    String color = "red";
    switch(color) {
    case "red":
      System.out.println("You have selected red color");
      break;
    case "green":
      System.out.println("You have selected green color");
      break;
    case "blue":
      System.out.println("You have selected blue color");
      break;
    default:
      System.out.println("No matching color");
    }

  }

}
You have selected red color

Java iç içə keçid

Başqa bir keçid qutusu içərisində bir keçid vəziyyətimiz olduqda, java içərisində bir keçid vəziyyəti olaraq adlandırırıq. Bununla birlikdə, kodu daha mürəkkəbləşdirə və oxunuşluğa təsir göstərə biləcəyi üçün bunun istifadəsini məsləhət görmürük.

İçəridə olan açar kassa nümunəsi

Aşağıdakı nümunədə break açar sözü ilə birlikdə iç içə keçid istifadə etdik. Xarici keçid qutusu üçündür dərəcə və daxili keçid qutusu kurs. Əvvəlcə keçid vəziyyətinin ifadəsini yoxlayır dərəcə və dəyərə uyğun bir iş tapır "BTech". Dava dəyəri uyğun gəldikdə, müvafiq vəziyyət ifadəsinin içindəki kodu yerinə yetirir. Bu, dəyişən olan başqa bir keçid qutusunu ehtiva edir kurs və vəziyyəti dəyərə uyğun tapır "O" və müvafiq işi icra edir. İstifadə etdikdən bəri sındırmaq həm xarici, həm də daxili keçid vəziyyətindəki ifadələr, qalan vəziyyət dəyərlərini görməzlikdən gəlir və açar qutusundan çıxır.

public class NestedSwitchCaseDemo {

  public static void main(String[] args) {
    String degree = "BTech";
    String course = "IT";
    switch(degree){
    case "BE":
      System.out.println("Degree is Bachelors of Engineering");
      switch(course) {
      case "CSE":
        System.out.println("Course is Computer Science Engineering");
        break;
      case "ECE":
        System.out.println("Course is Electronics and Communications Engineering");
        break;
      }
    case "BTech":
      System.out.println("Degree is Bachelors of Technology");
      switch(course) {
      case "IT":
        System.out.println("Course is Information Technology");
        break;
      case "BioTech":
        System.out.println("Course is Biotechnology");
        break;
      }
      break;
    default:
      System.out.println("No matching degree found");
    
        
    }

  }

}
Degree is Bachelors of Technology
Course is Information Technology

Enum istifadə edərək işi dəyişdirin

Biz də istifadə edə bilərik saymaq keçid vəziyyətini javada təsdiqləmək üçün dəyərlər. Aşağıda enums istifadə edərək java-da switch case-in necə istifadə ediləcəyini göstərən bir nümunə var. Əvvəlcə enum dəyərlərini elan edirik və dəyərləri başqa bir dəyişənə qaytarırıq. For loop istifadə edərək, bütün enum dəyərləri arasında gedirik və switch case istifadə edərək müvafiq tam ay adını çap edirik.

Enumlar haqqında daha çox məlumatı ayrıca bir təlimatda öyrənəcəyik.

public class SwitchCaseEnum {

  public enum month { Jan, Feb, Mar, Apr, May, Jun, July, Aug, Sept, Oct, Nov, Dec}
  public static void main(String[] args) {
    month[] fullmonth = month.values();
    for(month name: fullmonth) {
      switch(name) {
      case Jan:
        System.out.println("Month is January");
        break;
      case Feb:
        System.out.println("Month is February");
        break;
      case Mar:
        System.out.println("Month is March");
        break;
      case Apr:
        System.out.println("Month is April");
        break;
      case May:
        System.out.println("Month is May");
        break;
      case Jun:
        System.out.println("Month is June");
        break;
      case July:
        System.out.println("Month is July");
        break;
      case Aug:
        System.out.println("Month is August");
        break;
      case Sept:
        System.out.println("Month is September");
        break;
      case Oct:
        System.out.println("Month is October");
        break;
      case Nov:
        System.out.println("Month is November");
        break;
      case Dec:
        System.out.println("Month is December");
        break;
      }
    }
    
    

  }

}
Month is January
Month is February
Month is March
Month is April
Month is May
Month is June
Month is July
Month is August
Month is September
Month is October
Month is November
Month is December

Wrapper siniflərindən istifadə edərək vəziyyəti dəyişdirin

Java-da keçid işi, Bayt, Qisa, Uzun və Tamsayı kimi sarmal siniflərini dəstəkləyir. Aşağıdakı nümunə, Tamsayı sarıcı sinifinin necə istifadə ediləcəyini göstərir.

public class SwitchCaseWrapperDemo {

  public static void main(String[] args) {
    Integer day = 5;
    switch(day) {
    case 1:
      System.out.println("Sunday");
      break;
    case 2:
      System.out.println("Monday");
      break;
    case 3:
      System.out.println("Tuesday");
      break;
    case 4:
      System.out.println("Wednesday");
      break;
    case 5:
      System.out.println("Thursday");
      break;
    case 6:
      System.out.println("Friday");
      break;
    case 7:
      System.out.println("Saturday");
      break;
    }

  }

}
Thursday

arayış

Şərh yaz

Translate »
1