C# 从入门到项目实践(超值版)
上QQ阅读APP看书,第一时间看更新

4.5 就业面试技巧与解析

C#中运算符和表达式数量之多,在高级语言中是少见的。正是丰富的运算符和表达式使C#功能十分完善,这也是C#的主要特点之一,这一部分也是考官容易问到的。

4.5.1 面试技巧与解析(一)

面试官:语句“Console.ReadLine();”的用法?

应聘者:该语句用于接收用户的输入,输入类型默认为字符串string类型。

例如:

   Console.WriteLine("请问你喜欢吃什么水果?");
   string fruits = Console.ReadLine();
   Console.WriteLine("哈哈,我也喜欢吃{0}", fruits);

对于“Console.WriteLine();”语句来说,括号里双引号的内容可原样输出,但是转义字符及索引号“{ }”除外。

面试官:&、|、^除了用于位运算,还可以用于什么运算?请详细介绍。

应聘者:还可以用于逻辑运算,它们分别对应与、或、异或。

(1)对于bool操作数,与运算符(&)计算其操作数的逻辑AND;即,当且仅当其两个操作数皆为true时,结果才为true。

例如:

   Console.WriteLine(true & false);  //返回 false
   Console.WriteLine(true & true);   //返回 true

(2)对于bool操作数,或运算符(|)会计算其操作数的逻辑OR;即,当且仅当其两个操作数皆为false时,结果才为false。

例如:

   Console.WriteLine(true | false);  //返回 true
   Console.WriteLine(false | false);  //返回 false

(3)对于bool操作数,异或运算符(^)计算其操作数的逻辑异或;即,当且仅当其一个操作数为true时,结果才为true。

例如:

   Console.WriteLine(true ^ false);   //返回 true
   Console.WriteLine(false ^ false);   //返回 false
   Console.WriteLine(true ^ true);   //返回 false

4.5.2 面试技巧与解析(二)

面试官:运算符&、|的运算结果和运算符&&、||有什么区别?

应聘者:C#为整型和布尔型预定义了二进制“&”运算符。对于整型,“&”计算操作数的按位与;对于布尔操作数,“&”计算操作数的逻辑与,当且仅当两个操作数均为true时,其结果才为true。

而“&&”则是这样:条件1为false时不去理会条件2,因为即使条件2为true,结果还是false,“&”则会去判断条件2。

例如:

   bool a = true;
   bool b = false;
   bool c = a || b;

检查第一个操作数a时已经得出c为true,就不用再处理第二个操作数b了。