Принципы объектно-ориентированного программирования

         

Несколько конструкций else



Несколько конструкций else

Конструкция else оператора //позволяет определить действия, которые нужно выполнить, если результатом вычисления выражения в if будет false. В предыдущем примере приложение производит простое сравнение введенного пользователем числа со случайным. В этом случае существуют всего две возможности: пользователь мог ввести правильное или неправильное число. Но г/и else можно также применять в случаях, когда нужно проверить более двух условий. В приведенном ниже примере я спрашиваю пользователя, каким языком он сейчас пользуется (кроме С#). При этом я включил возможность выбора трех языков, так что if должен иметь дело с четырьмя возможными ответами: тремя конкретными языками и ситуацией, когда пользователь выбрал неизвестный язык. Вот один из способов запрограммировать это с помощью if/else:


using System;

class IfTest2App <

const string CPlusPlus = "C++";

const string VisualBasic = "Visual Basic";

const string Java = "Java";

public static void Main() {

Console.Write("Ha каком языке вы сейчас программируете " + "(кроме С#)?");

string inputString = Console.ReadLineO;

if (0 == String.Compare(inputString, CPlusPlus, true)) {

Console.WriteLine("\nEwin выберите С#, у вас не будет " +

"проблем !"); }

else if (0 == String.Compare(inputString, VisualBasic, true)) {

Console.WriteLine("\nB C# вы обнаружите много " +

"прекрасных возможностей VB !");

}

else if (0 == String.Compare(inputString, Java, true))

{

Console.WriteLine("\n8bi6paB C#, вы облегчите себе " + "жизнь <G> !!");

} else

{

Console.WriteLine("\nM3BHHMTe, это вычислить не можем.");

} } }

Для'сравнения возвращенного методом String.Compare значения с О применяется оператор ==. Это делается потому что String.Compare возвращает —1, если первая строка меньше второй, 1 — если больше, и О, если они совпадают. Между тем здесь есть интересные детали, связанные с тем, как С# выполняет оператор if.



Содержание раздела