English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在本课件中,你将学习如何使用Java中的switch语句来控制程序执行的流程
在Java中,我们使用了if..else..if极子在多个块之间执行一个代码块。但是,if ... else ... if极子的语法就连得连连了。
因为,我们可以使用switch语句代替long if ... else ... if极子。switch语句的使用有改换我们的代码更加可读性。
switch语句的语法为:
switch (variable/expression) { case value1: //匹配1语句 قفزة; case value2: //匹配2语句 قفزة; ..…… ..…… الافتراضي: //默认语句 }
switch语句评估expression或variable。将实行语句与每个case标签的值。值可以是行号。
现在,如果值与有应的case标签匹配,那么将执行匹配的case标签的所有语句。
例如,如果 variable/expression 等于value2。在该情况下,case将执行该匹配的所有语句(case2的语句)。
注意,在每种情况都使用break语句。break语句用于结束该语句的执行switch。
这很重要,因为如本不使用break语句,则case后的所有语句将按顺序执行,直到switch语句结束。
class Main { public static void main(String[] args) { int week = 4; String day; //判断星期几天的switch语句 switch (week) { case 1: day = ";Sunday"; قفزة; case 2: day = ";Monday"; قفزة; case 3: day = ";Tuesday"; قفزة; //匹配星期的值 case 4: day = ";Wednesday"; قفزة; case 5: day = ";Thursday"; قفزة; case 6: day = ";Friday"; قفزة; case 7: day = ";Saturday"; قفزة; الافتراضي: day = "Invalid day"; قفزة; } System.out.println("هذااليومهـ" + day); } }
الخروج:
هذااليومهـWednesday
فيالمثالالسابق،استخدمناتعليمهـswitchلفindingيوممنالأسبوع.فيهذا،لدينامتغيرـweekيحملقيمةعددية.يتم مقارنةالقيمةبكلقيمةفيكتلةـcaseفيـswitch.
قيمةـweekهـي4.لذلك،يُطابقـcase4.لذاتمتنفيذجملـcase4.
يأخذالبرنامجالتاليثلاثإدخالاتمنالمستخدم:رمزواحدوعددثنينعلىأساسالرمزالمقدممنالمستخدم،تمتمحاسبةالعدد.ثمتمتعرضالنتيجةعلىالشاشة.
قبلمراجعةهذاالبرنامج،منالأفضلأنتكونفهمتJava scannerلإعدادالمستخدمإدخال.
import java.util.Scanner; class Main { public static void main(String[] args) { char operator; Double number1, number2, result; //إنشاءمثالللـScanner Scanner scanner = new Scanner(System.in); System.out.print("ادخلرمزالعمليه(الخيارات: +, -, *, أو /): "); //طلبإدخالرمزالعمليه operator = scanner.next().charAt(0); System.out.print("ادخلعدد1وعدد2: "); //طلبإدخالعددمنالمستخدم number1 = scanner.nextDouble(); number2 = scanner.nextDouble(); switch (operator) { //إحداثيةاناعدادإفتراضية case '+": result = number1 + number2; System.out.print(number1 + "+" + number2 + "= " + result); قفزة; //إحداثيةاناعدادإفتراضية case '-": result = number1 - number2; System.out.print(number1 + "-" + number2 + "= " + result); قفزة; //إحداثيةاناعدادإفتراضية حالة "*": result = number1 * number2; System.out.print(number1 + "*" + number2 + " = " + result); قفزة; // تفاصيل جزء من الكود حالة "/": result = number1 / number2; System.out.print(number1 + "/" + number2 + " = " + result); قفزة; الافتراضي: System.out.println("operator غير صالح!"); قفزة; } } }
الخروج:
أدخل العلامة الحسابية (الخيارات: +، -, * أو /): * أدخل الرقم 1 والرقم 2 بشكل منفصل: 1.4 -5.3 1.4*-5.3 = -7.419999999999999
في المثال أعلاه، استخدمنا جملة switch لإنشاء حاسبة. إنه ي�行 الحسابات بناءً على العلامة الحسابية التي يقدمها المستخدم.