Csharp+Asp.net系列教程(四)(1)

asp.net|教程

迈克老猫
来自:老猫的理想

本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言。

这次简述一下操作符
1.算术操作符
算术操作符包括加(+)、减(-)、乘(*)、除(/)和求余(%)。加减操作符除了用于整数和实数的加减运算外,还适用于枚举类型、字符串类型和委托类型,这是通过操作符重栽实现的。
string mf1="Mike";
string mf2="Cat";
string mf3=mf1+mf2;//mf3="MikeCat"

using System;
enum Weekday
{
Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
};
class MikeCat
{
static void Main()
{
Weekday mf1=Weekday.Sunday;
Weekday mf2=mf1+3;
Console.WriteLine("mf1={0},mf2={1}",mf1,mf2);
}
}//结果:mf1=Sunday,mf2=Wednesday
2.赋值操作符
赋值就是给一个变量赋一个新值。c#中分简单赋值和复合赋值两类。
简单赋值:"=" a=b=c 等价于 a=(b=c)
复合赋值:"+=" "-=" "*=" "/=" "%=" "|=" "^=" "<<=" ">>=" a+=10 等价于a=a+10
3.比较操作符
比较操作符用来比较两个表达式的大小,如大于(>) < == != <= >= 。
4.逻辑操作符
逻辑与(&&) 逻辑或(||) 和 逻辑非(!)
5.位操作符是对数据按二进制位进行运算的操作符。c#位操作符包括按位与(&) | ~ << >>
using System;
class MikeCat
{
public static void Main()
{
int a=6&3;
Console.WriteLine("a={0}",a);
//6的二进制是00000110,3的二进制是00000011,按位与后等于00000010,即2
int b=6|3;
Console.WriteLine("b={0}",b);
//6的二进制是00000110,3的二进制是00000011,按位或后等于00000111,即7
int c=~6;
Console.WriteLine("c={0}",c);
//6的二进制是00000110,按位取反后是11111001即-7
int d=6^3;
Console.WriteLine("d={0}",d);
//6的二进制是00000110,3的二进制是00000011,按位异或后等于00000101,即5
int e=6<<3;
Console.WriteLine("e={0}",e);
//6的二进制是00000110,左移三位后等于00101000,即48
int f=6>>2;
Console.WriteLine("f={0}",f);
//6的二进制是00000110,右移二位等于00000001,即1
}
}
6.is操作符
is操作符用于检查运行时对象类型是否和给定的类型兼容。表达式"e is T"中的e是一个表达式,T是一个类型。返回值是一个布尔值。
如果满足下列两个条件,则 is 表达式计算为 true 值:
expression 非 null。
expression 可以被转换为 type。也就是说,将完成形式 (type)(expression) 的转换表达式而不引发异常。
示例
// cs_keyword_is.cs
// The is operator
using System;
class Class1
{
}
class Class2
{
}
public class IsTest
{
public static void Test (object o)
{
Class1 a;
Class2 b;
if (o is Class1)
{
Console.WriteLine ("o is Class1");
a = (Class1)o;
// do something with a
}
else if (o is Class2)
{
Console.WriteLine ("o is Class2");
b = (Class2)o;
// do something with b
}
else
{
Console.WriteLine ("o is neither Class1 nor Class2.");
}
}
public static void Main()
{
Class1 c1 = new Class1();
Class2 c2 = new Class2();
Test (c1);
Test (c2);
Test ("a string");
}
}
输出
o is Class1
o is Class2
o is neither Class1 nor Class2.
7.三元操作符
三元操作符(?:)也称条件操作符。对条件表达式"b?x:y",总是先计算条件b,然后进行判断。如果b的值为true,则计算x的值,否则计算y的值。条件运算符为右联运算符,因此该形式的表达式 a ? b : c ? d : e 按如下规则计算:a ? b : (c ? d : e)
8. . 运算符
点运算符用于成员访问。name1 . name2
class Simple
{
public int a;
public void b()
{
}
}
Simple s = new Simple();
变量 s 有两个成员 a 和 b;若要访问这两个成员,请使用点运算符
s.a = 6; // assign to field a;
s.b(); // invoke member function b;

这么短也要拆开发表,郁闷...

时间: 2024-12-22 06:57:46

Csharp+Asp.net系列教程(四)(1)的相关文章

Csharp+Asp.net系列教程(一)

asp.net|教程 本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言.首先讲解一下c#,这里只是粗略的讲解,详细内容请购买相关书籍,或参阅相关文档.c#已经取消了c++中的指针,并且在c++中大量被使用的操作符(:: ->)已经不在出现,c#中指支持一个".".c#具有面向对象编程语言的所有特性,如封装.继承.多态等.而且比java更面向对象,每种类型都可以看作一个对象.但c#指允许单继承,即一个类不会有多个基类.另外,c#没

Csharp+Asp.net系列教程(五)

asp.net|教程 本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言. 长假就要过去了.钱包也空空如也了,又要投入让人生畏的紧张工作中了... 感慨虽然很多,可是教程还是要继续的写,先发几句牢骚.^_^,不过教程可能以后要写的慢些了,因为心有余而力不足丫!不说废话进入正题: 有网友说教程过于繁琐,呵呵,下面正好要分析一下流程控制语句,有C程序设计基础的就略过这段,考虑有新手还是简要的介绍一下,详细还请参阅谭浩强教授的<C语言程序设计>一书吧

Csharp+Asp.net系列教程(六)

asp.net|教程 本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言. 好些天不写了.今天事情较少,有几个网友总是问,就又写了点东西.可能疏漏比较多,希望大家帮忙指正 预处理指令:与c++不同,c#没有独立的预处理器.在c#中,预处理指令并不是编译器开始编译代码之前的一个单独的处理步骤,而是作为词法分析的一部分来执行的.预处理指令都以#号开头并位于行首. #define指令用于定义符合,他的作用域是该定义所在的整个文件,符号定义必须放在所有其

Csharp+Asp.net系列教程(四) (2)

asp.net|教程 9.[] 运算符 方括号 ([]) 用于数组.索引器和属性,也可用于指针. type [] array [ indexexpr ] 其中: type 类型. array 数组. indexexpr 索引表达式 10.() 运算符 除了用于指定表达式中运算符的顺序外,圆括号还用于指定转换(类型转换) ( type ) expr 其中:type expr 要转换为的类型名. expr 一个表达式.转换显式调用从 expr 类型到 type 类型的转换运算符:如果未定义这样的转换

黄聪:Microsoft Enterprise Library 5.0 系列教程(四) Logging Application Block

原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(四) Logging Application Block 企业库日志应用程序模块工作原理图:        从上图我们可以看清楚企业库日志应用程序模块的工作原理,其中LogFilter,Trace Source,Trace Listener,Log Formatter的信息都可以在Category配置文件中反映出来,通过配置文件,调用LogWriter类的Writer方法,就可以将包含日志信息的LogEntr

ASP.NET 5系列教程 (四):向视图中添加服务和发布应用到公有云

向视图中添加服务 现在,ASP.NET MVC 6 支持注入类到视图中,和VC类不同的是,对类是公开的.非嵌套或非抽象并没有限制.在这个例子中,我们创建了一个简单的类,用于统计代办事件.已完成事件和平均优先级的服务. 1. 添加命名为Services 的文件夹,在该文件夹下添加名称为 StatisticsService.cs 的类: StatisticsService 类代码设计如下: using System.Linq; using System.Threading.Tasks; using

站外优化系列教程四:全方位了解BBS论坛营销必知12点

中介交易 SEO诊断 淘宝客 云主机 技术大厅 继前面与大家分享了<站外优化系列教程一:如何寻找高质量外链论坛>.<站外优化系列教程二:确定影响撰写适合推广方案因素>.<站外优化系列教程三:怎么写合理可执行的网站推广方案>个方面的知识.由于现在手上操作的网站(http://china.herostart.com)在做BBS论坛营销,所以整理了一些关于BBS论坛营销的资料.结合自身网站特点总结了一下关于BBS论坛营销的12个方面知识.对我现在即将要做的BBS论坛营销的我.

linux服务器WEB环境一键安装包lanmp系列教程四

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.关于绑定域名给大家的建议,新手值得看 大家在新建站点的时候,第一行,域名那一项,建议不要填写顶级域名,为什么?因为你填写之后,是无法修改的,你以后

Backbone.js系列教程四:Backbone全面介绍

Backbone的原理 Backbone的初衷在于单页面应用程序中添加架构,尤其是在创造DocumentCloud应 用程序的过程中,以避免重复性的DOM交叉以及DOM中用于保持UI同步的数据发生混乱.Backbone通过一套构造函数来完成这个步骤,于是就形成了 模型.集合与视图对象,目的在于组织应用程序的数据.逻辑和显示.一旦这些对象被具现化,它们彼此之间就存在特殊的关系,共同保证了应用程序的模块化.松 耦合性(利用event系统沟通).可扩展性. Backbone提供应用程序架构,还能帮助构