ASP.NET网页设计VC#2005疾速进门之利用布尔操纵符
呵呵,那你就关注微软的招聘信息以及别人的招聘经验啊,还有也不一定去做技术的,你如果真的想去就多了解了解。(其实我的意思是说想到微软做技术是很不容易的。疾速进门 布尔操纵符(Booleanoperator)是求值了局要末为true,要末为false的一种操纵符。C#供应了几个十分有效的布尔操纵符,个中最复杂的是NOT(求反)操纵符,它利用叹息号(!)来暗示。!操纵符求一个布尔值的反值。在上例中,假设变量areYouReady的值为true,那末表达式!areYouReady的求值了局就是false。了解相称和干系操纵符
两个更经常使用的布尔操纵符是相称(==)和不等(!=)操纵符。使用这两个二元操纵符,能够判别一个值是不是与不异范例的另外一个值相称。表1展现了这些操纵符是怎样事情的,个中以一个名为age的int变量为例。
表1布尔操纵符
操作符含义示例了局(假定age=42)==即是age==100false!=不即是age!=0true
与上述两个操纵符亲切相干的是干系操纵符(relationaloperator)。使用这些操纵符,能够判别一个值是不是小于或年夜于同范例的另外一个值。表2展现了怎样利用这些操纵符。
表2干系操纵符
操作符含义示例了局(假定age=42)&<小于age&<21false&<=小于或即是age&<=18false>年夜于age>16true>=年夜于或即是age>=30true
注重不要搅浑相称操纵符(==)与赋值操纵符(=)。像x==y如许的代码会对照x与y,假如两个值不异,就会前往true。相反,像x=y如许的代码会将y的值赋给x。
了解前提逻辑操纵符
C#还供应了别的两个布尔操纵符:逻辑AND(逻辑与)操纵符,它利用&&来暗示;和逻辑OR(逻辑或)操纵符,它利用||来暗示。这两个操纵符统称为前提逻辑操纵符(conditionallogicaloperator)。它们的感化是兼并分歧的布尔表达式,以组成一个更年夜的表达式。这两个二元操纵符与相称及干系操纵符的类似的地方在于,它们的了局也是true或false。分歧的地方在于,它们操纵的值(操纵数)自己就必需是true或false。
只要作为操纵数的两个布尔表达式都为true的条件下,&&操纵符的求值了局才为true。比方,只要在percent的值年夜于或即是零,并且percent的值小于或即是100的条件下,以下语句才会将true值赋给validPercentage:
boolvalidPercentage;
validPercentage=(percent>=0)&&(percent&<=100);
提醒老手常犯的一个毛病是在兼并两个测试的时分,只对percent变量定名一次,就像上面如许:
percent>=0&&&<=100//这个语句不克不及编译
利用圆括号有助于制止这类范例的毛病,同时也有助于廓清表达式。比方,能够对照一下以下两个表达式:
validPercentage=percent>=0&&percent&<=100
validPercentage=(percent>=0)&&(percent&<=100)
两个表达式前往的是统一个值,由于操纵符&&的优先级低于>=和&<=。但是,第二个表达式接纳更明晰易懂的体例标明了它的目标。
两个操纵符任何一个为true,操纵符||的求值了局都为true。利用操纵符||,我们能够判别两个前提中是不是有任何一个建立。假如percent的值小于零,大概percent的值年夜于100,以下语句会将值true赋给invalidPercentage:
boolinvalidPercentage;
invalidPercentage=(percent&<0)||(percent>100);
短路求值
操纵符&&和||都具有一项名为短路求值(shortcircuiting)的特征。偶然,基本没有需要将两个操纵数都求值出来。比方,假定操纵符&&的左操纵数求值为false,那末全部表达式的了局一定是false,不论右操纵数的值是甚么。相似地,假如操纵符||的左操纵数求值为true,那末全部表达式的了局一定是true。在这些情形下,操纵符&&和||将绕过对右边的布尔表达式的求值。上面是一些例子:
(percent>=0)&&(percent&<=100)
在这个表达式中,假设percent的值小于零,那末操纵符&&左边的布尔表达式会求值为false。该值意味着全部表达式的了局一定为false,不管右边的表达式是甚么。以是,不会对右边的表达式举行求值。
(percent&<0)||(percent>100)
在这个表达式中,假如percent的值小于零,操纵符||左边的布尔表达式会求值为true。该值意味着全部表达式的了局一定为true。以是,不会对右边的表达式举行求值。
假如能当心地计划表达式来利用前提逻辑操纵符,就能够制止经由过程不用要的事情来提拔代码的功能。将盘算简单、复杂的布尔表达式放到前提逻辑操纵符的右边,将较庞大的表达式放到右侧。在很多情形下,程序其实不必要求值更庞大的表达式。
操纵符优先级和分离性总结
表3总结了迄今为止学过的一切操纵符的优先级和分离性。不异种别的操纵符具有不异的优先级。一个更高种别中的操纵符优先于较低种别中的操纵符。
表3操纵符小结
类别
操作符
描述
结合性
次要(Primary)
()
++
--
掩盖优先级
后递增
后递加
左
一元(Unary)
!
+
-
++
--
逻辑NOT
加
减
前递增
前递加
左
乘(Multiplicative)
*
/
%
乘
除
求余
左
加(Additive)
+
-
加
减
左
干系(Relational)
&<
&<=
>
>=
小于
小于或即是
年夜于
年夜于或即是
左
相称(Equality)
==
!=
即是
不即是
左
前提AND(ConditionalAND)
&&
逻辑AND
左
前提OR(ConditionalOR)
||
逻辑OR
左
赋值(Assignment)
=
右据说很厉害,甚至可以把C#也干掉^_^,不过也很复杂,本来C++已经够复杂的。有人甚至还提出把这个东东引进标准,我觉得基本上不可能的。 PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。 关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。 碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。 在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。 如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。 ASP.net1.1和2.0在程序上的语法也有很大不同,现在2.0属于新出来的,不知道半年后会不会有3.0(说笑一下)。Windows2003系统自动支持ASP和ASP.net环境,不用安装任何程序。Asp.net属于编译语言。ASP的最大不同(ASP属于解释语言)。
页:
[1]