نحوه ی به کارگیری کلاس استرینگ در دستورات سوییچ در زبان جاوا

*بانو بهار*

کاربر نگاه دانلود
کاربر نگاه دانلود
عضویت
2016/08/15
ارسالی ها
3,937
امتیاز واکنش
10,965
امتیاز
804
محل سکونت
میان شکوفه‌ها
پس از آشنایی با نحوه به کارگیری متغیر char به همراه switch در این آموزش قصد داریم تا به بررسی این مطلب بپردازیم که چگونه می توان کلاس String را به همراه دستورات شرطی switch مورد استفاده قرار داد. همچون روال گذشته، قصد داریم تا به منظور درک بهتر مطالب آموزشی یک سناریو تعریف کنیم که در آن برنامه ای کاربردی از ادغام String و switch خواهیم نوشت.

با نگاهی به سایت
Please, ورود or عضویت to view URLs content!
با وب سایتی مواجه خواهیم شد که با تعیین نام کشورها، استان ها و همچنین شهرها پیش شماره کشور، استان و یا شهر مد نظر را به ما نشان می دهد. در این آموزش قصد داریم تا چنین پروژه ای را تعریف کنیم به این صورت که با نوشتن نام یکی از شهرهای ایران، نرم افزار پیش شماره تلفن آن شهر را به ما نشان دهد. به عبارت دیگر کاری که ما در این برنامه انجام خواهیم داد این است که داده ای از جنس string وارد برنامه می کنیم، سپس با استفاده از دستوراتی که از قبل در switch تعریف کرده ایم، نرم افزار پیش شماره آن شهر را به ما اعلام می کند.

نکته ای که پیش از شروع آموزش می بایست حتماً مد نظر قرار دهیم این است که به کاری گیری string ها در switch در نسخه 7 جاوا امکان پذیر شده است. بنابراین ما برای طراحی این نرم افزار نیاز داریم تا از قبل نسخه JDK 7 را نصب کرده باشیم. برای این که اطمینان حاصل کنیم که نسخه 7 جاوا روی سیستم ما نصب است، به کنترل پنل رجوع کرده و روی آیکان Java کلیک می کنیم. سپس پنجره ای همچون پنجره زیر نمایان خواهد شد:

03f14ec90e5686395961b570cf28c580.jpg


در پنجره فوق روی دکمه About کلیک نموده سپس پنجره بعدی به شکل زیر ظاهر می شود:

2a1214c866329ea81d058310c8d0f2f2.jpg


در این پنجره به وضوح نسخه جاوا نصب شده روی سیستم مشخص می باشد. حال که از نصب نسخه جاوا 7 روی سیستم مطمئن شدیم نوبت به تنظیم محیط برنامه نویسی اکلیپس برای استفاده از جاوا 7 می رسد. در واقع ما می توانیم به طور هم زمان چندین نسخه جاوا را روی سیستم خود داشته باشیم فقط نکته ای که نمی بایست فراموش کنیم این است که به اکلیپس دستور دهیم از کدام نسخه استفاده کند (به منظور دستور دادن به محیط برنامه نویسی اکلیپس برای استفاده از نسخه ی خاصی از JDK به بخش آموزشی
Please, ورود or عضویت to view URLs content!
مراجعه نمایید.) ایجاد یک پروژه برای این آموزش با ایجاد پروژه برای آموزش های پیشین کمی متفاوت است. در واقع همان طور که در تصویر زیر قابل مشاهده است، در پنجره ای که برای ساخت یک پروژه جدید جاوا باز می شود می بایست از میان نسخه های JRE موجود نسخه 7 را انتخاب کنیم:

b3007066a0d1a752004837d46deae3ce.jpg


پس از انتخاب نامی به عنوان نام پروژه خود دکمه Finish را زده و سپس همان طور که قبلاً آموزش داده شده است یک کلاس جدید تحت عنوان CityCode به معنی "کد شهر" در آن ایجاد می کنیم. برای آن که بتوانیم به صورت دینامیک مقادیر string را وارد کنیم می بایست از کلاس Scanner استفاده نماییم. حال کد نیمه تکمیل ما به شکل زیر خواهد بود:

import java.util.Scanner;
public class CityCode {
public static void main(String[] args) {
Scanner keyboardInput = new Scanner(System.in);
String cityName = keyboardInput.next();
}
}
در کد فوق ما یک Instance یا "نمونه" از کلاس Scanner ایجاد کرده و نام آن را keyboardInput به معنی "ورودی کیبورد" گذاشته ایم. سپس یک شیء از روی کلاس String ایجاد کرده و نام آن را cityName به معنی "نام شهر" می گذاریم. در این مرحله به جای آن که مقداری برای کلاس String تعریف کنیم، دستور می دهیم تا با استفاده از کلاس Scanner هر آنچه که از طریق کیبورد وارد برنامه شد به شیء ساخته شده از روی کلاس String ما اختصاص یابد. در واقع متد ()next این وظیفه را دارا است تا ورودی هایی از هر جنس را از کیبورد دریافت کند. سپس نیاز است تا switch را به شکلی تعریف کنیم که مقدار شیء ساخته شده از روی کلاس String را گرفته و بر اساس آن نام شهر مرتبط را روی صفحه نمایش نشان دهد. برای این منظور کد فوق را به شکل زیر تکمیل می کنیم:

import java.util.Scanner;
public class CityCode {
public static void main(String[] args) {
System.out.print("Please Type the Name of the City ");
Scanner keyboardInput = new Scanner(System.in);
String cityName = keyboardInput.next();
switch (cityName) {
case "mashhad" :
System.out.println("Mashhad Code Is 0511");
break;
case "arak" :
System.out.println("Arak Code Is 0861");
break;
case "abadan" :
System.out.println("Abadan Code Is 0631");
break;
case "tehran" :
System.out.println("Tehran Code Is 021");
break;
case "amol" :
System.out.println("Amol Code Is 0121");
break;
case "chabahar" :
System.out.println("Chabahar Code Is 0545");
break;
case "sanandaj" :
System.out.println("Sanandaj Code Is 0871");
break;
default :
System.out.println("Sorry, This City Is Not Defined!");
break;
}
}
}
در حقیقت از آنجا که می خواهیم دستور switch مقدار شیء ساخته شده از روی کلاس String را مورد سنجش قرار دهد، می بایست داخل پرانتز مقابل switch نام شیئ که از روی کلاس String ساختیم یا همان cityName را وارد کنیم. اکنون به منظور روشن تر شدن کد فوق به طور نمونه یکی از case ها را مورد بررسی قرار می دهیم. اولین گزینه که :"case "mashhad نام دارد حاکی از این شرط است که ببیند آیا مقدار داده ورودی از طریق کیبورد معادل با واژه ی mashhad است یا خیر، چنانچه پاسخ به این شرط true بود سپس دستور ;("System.out.println("Mashhad Code Is 0511 مبنی بر نوشتن جمله Mashhad Code Is 0511 به معنی "کد مشهد 0511 است" اجرا خواهد شد و در نهایت به دستور break می رسد که بدان معنا است که از برنامه خارج شود. حال اگر داده ورودی معادل با این شرط نبود، شروط قرار گرفته در این switch یکی پس از دیگری اجرا می شوند و چنانچه هیچ کدام از case ها معادل با داده ورودی نبود، دستور default اجرا خواهد شد.
 
  • پیشنهادات
  • *بانو بهار*

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2016/08/15
    ارسالی ها
    3,937
    امتیاز واکنش
    10,965
    امتیاز
    804
    محل سکونت
    میان شکوفه‌ها
    کردن ;()cityName = cityName.toLowerCase پس از جایی که یک شیء از روی کلاس String تعریف کرده ایم، این دستور را به برنامه خود می دهیم که مقدار شیء ساخته شده از روی کلاس String برنامه ما که cityName نام دارد می بایست به هر شکلی که وارد برنامه شود در نهایت به حروف کوچک تبدیل شود. به عبارت دیگر می گوییم که کلاس cityName عبارت است از ;()cityName.toLowerCase یعنی یک cityName که حروف آن همگی کوچک شده باشند و از آنجا که حروف واژگانی که در switch تعریف شده اند همگی کوچک هستند (مثل mashhad) برنامه با هیچ گونه مشکلی مواجه نخواهد شد. اکنون کد ما می بایست به شکل زیر درآید:

    import java.util.Scanner;
    public class CityCode {
    public static void main(String[] args) {
    System.out.print("Please Type the Name of the City ");
    Scanner keyboardInput = new Scanner(System.in);
    String cityName = keyboardInput.next();
    cityName = cityName.toLowerCase();
    switch (cityName) {
    case "mashhad" :
    System.out.println("Mashhad Code Is 0511");
    break;
    case "arak" :
    System.out.println("Arak Code Is 0861");
    break;
    case "abadan" :
    System.out.println("Abadan Code Is 0631");
    break;
    case "tehran" :
    System.out.println("Tehran Code Is 021");
    break;
    case "amol" :
    System.out.println("Amol Code Is 0121");
    break;
    case "chabahar" :
    System.out.println("Chabahar Code Is 0545");
    break;
    case "sanandaj" :
    System.out.println("Sanandaj Code Is 0871");
    break;
    default :
    System.out.println("Sorry, This City Is Not Defined!");
    break;
    }
    }
    }
     

    برخی موضوعات مشابه

    بالا