1.运算符
+(加) –(减) *(乘) /(除) %(取余)
小练习:从键盘输入两个数,实现加减乘除运算,并输出结果。
// See https://aka.ms/new-console-template for more information
using System;
class Program
{
static void Main(string[] args)
{
double num1, num2,addResult,subResult,mulResult,divResult;
bool isValid1, isValid2;
do
{
Console.WriteLine("请输入第一个数:");
isValid1 = double.TryParse(Console.ReadLine(), out num1); //double.TryParse是尝试将输入的字符串转换为double类型的数值,如果转换成功则返回true,失败则返回false
if (!isValid1)
{
Console.WriteLine("输入的不是一个有效数字,请重新输入");
}
} while (!isValid1); //判断输入的值是否有效,无效则执行do中语句,直至输入的值有效
do
{
Console.WriteLine("请输入第二个数:");
isValid2 = double.TryParse(Console.ReadLine(), out num2); //如果转换成功则返回true,失败则返回false
if (!isValid2 || num2 == 0)
{
Console.WriteLine("输入的不是一个有效数字,请重新输入");
}
} while (!isValid2 || num2 == 0); //判断输入的值是否能转换成double类型的基础上判断是否为0
addResult = num1+ num2;
subResult = num1-num2;
mulResult = num1*num2;
divResult = num1/num2;
Console.WriteLine("加={0},减={1},乘={2},除={3}",addResult,subResult,mulResult,divResult);
}
}
2.赋值运算符
= 将表达式赋值给变量
+= x+=y ->x=x+y
-= x-=y ->x=x-y
*= x*=y ->x=x*y
/= x/=y ->x=x/y
%= x%=y ->x=x%y 模赋值
&= x&=y ->x=x&y 位与赋值
|= x|=y ->x=x|y 位或赋值
^= x^=y ->x=x^y 异或赋值
<<= x<<=y ->x=x<<y 左移赋值
>>= x>>=y ->x=x>>y 右移赋值
3.关系运算符
== 相等运算符
!= 不等运算符
< 小于运算符
> 大于运算符
<= 小于等于运算符
>= 大于等于运算符
4.逻辑运算符
逻辑运算符的操作元必须是bool型数据
& 与 会判断两个表达式
&& 与 针对bool类型进行判断,当第一个表达式为false时,不会去判断第二个表达式
|| 或
! 非
5.位运算符
& 按位与 都是1为1,否则为0
| 按位或 都是0为0,否则为1
~ 按位取反
^ 按位异或 相同时为0,否则为1
<< 左移,右边移空的部分补0
>> 右移,最高位为0,则左移空位填1;最高位为1,则左移空位填0
6.特殊运算符
①is 运算符,用于检查变量是否为指定的类型,如果是返回true,否则返回false
例如:
int i = 0;
bool result = i is int;
Console.WriteLine(result);
Console.ReadLine();
输出结果为true
②?: 运算符,根据布尔值类型返回两个值中的一个,如果为true,则返回第一个表达式;如果为false则返回第二个表达式。
③new运算符,用于创建一个新的类型实例
④typeof运算符,用于获得系统原型对象的类型