Препоръчано, 2024

Избор На Редактора

Разлика между if-else и switch

“If-else” и “switch” са изявления за избор. Изявленията за избор прехвърлят потока на програмата към конкретния блок от отчети, въз основа на това дали условието е „true“ или „false“. Фундаменталната разлика между if-else и switch изявленията е, че операторът if-else “избира изпълнението на операторите въз основа на оценката на израза в if изрази”. Превключвателните изрази "избира изпълнението на оператора често въз основа на командата от клавиатурата".

Сравнителна таблица

Основа за сравнениеако-другоключ
ОсновенКое изречение ще бъде изпълнено зависи от изхода на израза вътре, ако операторът.Кое изявление ще бъде изпълнено се определя от потребителя.
изразяванеif-else операторът използва множество изявления за множество избори.switch изразът използва един израз за множество избори.
Тестванеif-else тест за равенство, както и за логически израз.Проверка на оператора на превключвател само за равенство.
оценкаif изразът оценява цяло число, символ, указател или тип с плаваща запетая или булев тип.switch изчислява само знака или цяло число.
Последователност на изпълнениеИли ако се изпълни оператор, или се изпълни оператор.Превключвателната операция изпълнява един случай след друг, докато се появи прекъсващо изявление или се достигне крайът на превключвателя.
Изпълнение по подразбиранеАко условието вътре, ако изразите са неверни, тогава по подразбиране операторът else се изпълнява, ако е създаден.Ако условието в превключвателните изрази не съвпада с никое от случаите, за този случай се изпълняват операторите по подразбиране, ако са създадени.
РедактиранеТрудно е да се редактира операторът if-else, ако се използва вложеното if-else оператор.Лесно е да се редактират случаи на превключване, тъй като те се разпознават лесно.

Определение на if-else

Операторите if-else принадлежат на избора за избор в ООП. Общата форма на изявленията if-else е следната

 if (израз) {оператор (и)} else {оператор (и)} 

където „if“ и „else“ са ключовите думи, а отчетите могат да бъдат единичен оператор или блок от изявления. Изразът се оценява като "истина" за всяка ненулева стойност и за нула се оценява като "невярна".
Изразът в оператор if може да съдържа цяло число, символ, указател, с плаваща запетая или може да бъде булев тип. Операторът else е опционален в оператор if-else. Ако изразът върне вярно, операторите вътре, ако операторът се изпълни и ако се върне фалшиво, се изпълняват операторите вътре else, а в случай, че израза else не е създаден, не се изпълнява действие и контролът на програмата изскача навън на изявление if-else.

Нека разберем с пример.

 int i = 45, j = 34; if (i == 45 & j == 34) {cout << "Аз избирам тъмния choclate"; прекъсване; случай 2: cout << "изберете бонбони"; прекъсване; случай 3: cout << "изберете lollypop"; прекъсване;, , default cout << "избирате нищо"; } 

Тук стойността на "i" ще реши кой случай да бъде изпълнен, ако потребителят даде стойността на "i", различна от 1, 2 или 3, тогава се изпълнява делото по подразбиране.

Ключови разлики между if-else и switch

  1. Expression вътре, ако операторът реши дали да изпълни операторите вътре в блока или под else блока. От друга страна, изразът в декларацията на switch решава кой случай да се изпълни.
  2. Можете да имате няколко оператора if за множествен избор на отчети. При превключвателя имате само един израз за многократния избор.
  3. Изразът if-esle проверява за равенство, както и за логически израз. От друга страна, превключвайте проверките само за равенство.
  4. Операторът if оценява цяло число, характер, указател или тип с плаваща запетая или булев тип. От друга страна, switch операторът оценява само характер или цяло число.
  5. Последователността на изпълнение е като изявление под, ако блокът ще се изпълни или изявленията в друг блок оператор ще се изпълни. От друга страна изразът в израза switch решава кой случай да се изпълни и ако не приложите break оператор след всеки случай, той ще се изпълни до края на switch оператора.
  6. Ако изразът вътре, ако се окаже, че е невярно, ще бъде изпълнено изявление вътре в друг блок. Ако изразът в декларацията на превключвателя се окаже невярна, тогава се изпълняват стандартните оператори.
  7. Трудно е да се редактират изречения if-else, тъй като е досадно да се проследява къде е необходима корекцията. От друга страна е лесно да се редактират превключвателните изявления, тъй като те са лесни за проследяване.

Заключение:

Командата switch е лесна за редактиране, тъй като е създала отделни случаи за различни оператори, докато в вложени в if-else изрази става трудно да се идентифицират изявленията, които да се редактират.

Top