اذهب إلى المحتوى

السؤال

نشر

لدي كلاس للطالب يحتوي على( طالب،طالبة،مبتدئ،متقدم)باعتبارها متغيرات ثابتة.

في كل مرة ياخذ الطالب حالة.

هل يمكن كتابتها عن طريقif else اوswitch؟

وهل من طرق اخرى غيرهما؟

Recommended Posts

  • 1
نشر

يمكن تخزين هذه المتغيرات ضمن الصف عند الانشاء لأول مرة وحصر الاطلاع عليها ضمن دوال get (في هذه الحالة الدوال للتحقق تبدأ بـ is)

class Student {
  static enum Gender = { MALE, FEMALE };
  static enum Level = { BEGINNER, ADVANCED };
  
  private Gender gender;
  private Level level;
  
  public constructor(Gender gender, Level level) {
    this.gender = gender;
	this.level = level;
  }
  
  	
  public isAdvanced(){
    return this.level == Level.ADVANCED;
  }
  
  public isBeginner(){
    return this.level == Level.BEGINNER;
  }
  
  public isMale(){
    return this.gender == Gender.MALE;
  }
  
  public isFemale(){
    return this.gender == Gender.FEMALE;
  }
}


Student beginnerMaleStudent   = new Student(Student.Gender.MALE, Student.Level.BEGINNER);

beginnerMaleStudent.isMale(); // true
beginnerMaleStudent.isBeginner(); // true


Student advancedFemaleStudent = new Student(Student.Gender.FEMALE, Student.Level.ADVANCED);

beginnerMaleStudent.isFemale(); // true
beginnerMaleStudent.isAdvanced(); // true

 

  • 0
نشر

لقد حاولت أن أنفذ الكود عن طريق switch 

import java.util.Scanner; 

public class Main
{
	public static void main(String[] args) {
		int status;
        Scanner st = new Scanner(System.in);
        System.out.println("Choose from 1 to 4:");
        status = st.nextInt();
          switch (status) {
          case 1:
            System.out.println("طالب");
            break;
          case 2:
            System.out.println("طالبة");
            break;
          case 3:
            System.out.println("مبتدئ");
            break;
          case 4:
            System.out.println("متقدم");
            break;
            
           default:
           System.out.println("choose from 1 to 4");
        }
	}
}

لقد قمت بعمل استدعاء لـ Scanner حتى تتمكن من إدخال القيم 

import java.util.Scanner;

ثم قمت بتخزين القيمة في متغير status 

int status;

ويتم فحص قيمة المتغير عن طريق switch  ويتم تحديد أربع حالات له 

  • الحالة 1 طالب 
  • الحالة 2 طالبة
  • الحالة 3 مبتدئ
  • الحالة 4 متقدم
switch (status) {
          case 1:
            System.out.println("طالب");
            break;
          case 2:
            System.out.println("طالبة");
            break;
          case 3:
            System.out.println("مبتدئ");
            break;
          case 4:
            System.out.println("متقدم");
            break;
            
           default:
           System.out.println("choose from 1 to 4");
        }

وفي حالة أدخل رقم آخر غير المتوافق مع الحالات  يطبع قيمة default 

default:
  System.out.println("choose from 1 to 4");

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...