• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > asp.net运算符之逻辑运算符以及其他运算符介绍与实例

asp.net运算符之逻辑运算符以及其他运算符介绍与实例

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了asp.net,asp net培训,asp和asp.net的区别,零基础学asp.net,c#和asp.net的区别等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

逻辑(布尔型)运算符用于对boolean型的结果的表达式进行运算,运算的结果都是boolean型。其运算结果如下所示:

运算符 运算 例子 结果
& AND(与) false&true false
| OR(或) false|true true
^ XOR(异或) false^true true
! NOT(非) !false true
&& AND(短路) false&&true false
|| OR(短路) false||true true


下面对一些比较容易出现问题进行简单解释:

1、“^“ 将计算操作数的逻辑“异或”;也就是说,当且仅当只有一个操作数为 true时,结果才为true。

2、“&”与”&&“的区别在于,如果使用前者连接,那么无论任何情况下,“&”两边的表达式都会参与计算。如果使用后者连接,当“&&”的左边为false,则将不会计算其右边的表达式。

3、“|”与“||”的区别在于,“|”表示两边任何一个布尔表达式为真,该组合就会返回true值;而对于“||”,跟第二差不多,若左边是true则返回true,若左边是falsh,则看右边,若右边为true则为true否则为falsh。

例

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

        int x = 0;
        string name = "搜索吧";

        //&运算,两个中任何一个为假时则为假
        Response.Write("x != 0 & name = /"搜索吧/"的运算结果是:"+ (x != 0 & name == "搜索吧"));

        Response.Write("<br>");

        //|运算,当两个中任何一个为真时,运算结果为真,否则为加
        Response.Write("x != 0 | name = /"搜索吧/"的运算结果是:" + (x != 0 | name == "搜索吧"));

        Response.Write("<br>");

        //^运算,当且仅当有一个是True时,为真,否则为假
        Response.Write("x != 0 ^ name = /"搜索吧/"的运算结果是:" + (x != 0 ^ name == "搜索吧"));
        Response.Write("<br>");
        Response.Write("x == 0 ^ name = /"搜索吧/"的运算结果是:" + (x == 0 ^ name == "搜索吧"));
        Response.Write("<br>");

        //!运算,若真则假,若假则真
        Response.Write("x != 0 的运算结果是:" + !(x != 0));

        Response.Write("<br>");

        //&&短路运算,若左边为假则退出,若左边为真,则看右边
        Response.Write("x != 0 && name = /"搜索吧/"的运算结果是:" + (x != 0 && name == "搜索吧"));

        Response.Write("<br>");
        //||短路运算,若左边为真,则为真退出;若左边为假,则看右边,右边为真,则为真,否则为假
        Response.Write("x != 0 || name = /"搜索吧/"的运算结果是:" + (x != 0 || name == "搜索吧"));
    }
}

</div>

运算符

     C# 提供大量运算符,这些运算符是指定在表达式中执行哪些操作的符号。通常允许对枚举进行整型运算,例如 ==、!=、<、>、<=、>=、binary +、binary -、^、&、|、~、++、-- 和 sizeof()。此外,很多运算符可被用户重载,由此在应用到用户定义的类型时更改这些运算符的含义。

运算符类别 运算符
基本 x.y
f(x)
a[x]
x++
x--
new
typeof
checked
unchecked
->
一元 +
-
!
~
++x
--x
(T)x
True
False
&
sizeof
乘法 *
/
%
加法 +
-
变换 <<
>>
关系和类型检测 <
>
<=
>=
is
as
相等 ==
!=
逻辑“与” &
逻辑 XOR ^
逻辑“或” |
条件 AND &&
条件 OR ||
条件运算 ?:
赋值 =
+=
-=
*=
/=
%=
&=
|=
^=
<<=
>>=
??

运算符优先级
前++ 前-- +(正号) -(负号)! ~
* / %
+ -
<< >>
< > <= >=
== !=
&
^

&&

赋值运算
后++ 后--
可重载运算符
     C# 允许用户定义的类型通过使用 operator 关键字定义静态成员函数来重载运算符。但不是所有的运算符都可被重载,下表列出了不能被重载的运算符:
运算符 可重载性
+、-、!、~、++、--、true 和 false 可以重载这些一元运算符。
+, -, *, /, %, &, |, ^, <<, >> 可以重载这些二进制运算符。
==, !=, <, >, <=, >= 比较运算符可以重载(但请参见本表后面的说明)。
&&, || 条件逻辑运算符不能重载,但可使用能够重载的 & 和 | 进行计算。
[] 不能重载数组索引运算符,但可定义索引器。
() 不能重载转换运算符,但可定义新的转换运算符(请参见 explicit 和 implicit)。
+=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>= 赋值运算符不能重载,但 += 可使用 + 计算,等等。
=、.、?:、->、new、is、sizeof 和 typeof 不能重载这些运算符。

语法

</div>

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Asp.net SignalR 应用并实现群聊功能 开源代码
  • asp.net动态更新
  • asp.net利用母版制作页脚效果
  • Asp.Net服务器发送HTTP标头后无法设置内容类型的问题解决
  • 使用asp.net mvc,boostrap及knockout.js开发微信自定义菜单编辑工具(推荐)
  • 详解ASP.NET MVC 常用扩展点:过滤器、模型绑定
  • ASP.NET Core发送邮件的方法
  • 在ASP.NET Core 中发送邮件的实现方法(必看篇)
  • ASP.NET MVC从视图传参到控制器的几种形式
  • Asp.net core WebApi 使用Swagger生成帮助页实例

相关文章

  • 2017-05-11AjaxControlToolKit 显示浏览者本地语言的方法
  • 2017-05-11asp.net下使用jQuery.AutoComplete完成仿淘宝商品搜索自动完成功能(改进了键盘上下选择体验)
  • 2017-05-11Asp.net后台把脚本样式输出到head标签中节省代码冗余
  • 2017-05-11高效的使用 Response.Redirect解决一些不必要的问题
  • 2017-05-11有关.NET参数传递的方式引发的思考
  • 2017-05-11DataTable多列合并问题轻松搞定
  • 2018-08-20SignalR Self Host+MVC等多端消息推送服务(一)
  • 2017-05-11C#.net 微信公众账号接口开发
  • 2017-05-11vs.net控件updatePanel实现无刷新的方法
  • 2017-05-11教你Asp.net下使用mysql数据库的步骤

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • .net mvc页面UI之Jquery博客日历控件实现代码
    • ASP.NET MVC 3实现访问统计系统
    • asp.net实现在非MVC中使用Razor模板引擎的方法
    • asp.net下URL处理两个小工具方法
    • 一步步打造漂亮的新闻列表(无刷新分页、内容预览)第三章
    • ToString()使用方法汇总(c#)
    • asp.net显示页面执行时间
    • asp.net如何进行mvc异步查询
    • 如何传值在2个页面之间 要求不刷新父页面,并且不能用Querystring传值
    • ASP.NET 后台登录小技巧介绍

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有