C#数据类型和基本语法回顾

112 阅读4分钟

数据类型回顾

类型描述范围默认值
bool布尔值True 或 FalseFalse
byte8 位无符号整数0 到 2550
char16 位 Unicode 字符U +0000 到 U +ffff'\0'
decimal128 位精确的十进制值,28-29 有效位数(-7.9 x 1028 到 7.9 x 1028) / 100 到 280.0M
double64 位双精度浮点型(+/-)5.0 x 10-324 到 (+/-)1.7 x 103080.0D
float32 位单精度浮点型-3.4 x 1038 到 + 3.4 x 10380.0F
int32 位有符号整数类型-2,147,483,648 到 2,147,483,6470
long64 位有符号整数类型-9,223,372,036,854,775,808 到 9,223,372,036,854,775,8070L
sbyte8 位有符号整数类型-128 到 1270
short16 位有符号整数类型-32,768 到 32,7670
uint32 位无符号整数类型0 到 4,294,967,2950
ulong64 位无符号整数类型0 到 18,446,744,073,709,551,6150
ushort16 位无符号整数类型0 到 65,5350

值类型(初始值 )

int,byte初始值为0,bool初始值为false,string初始值是null,null无法修饰int类型。

如果不想给初始值;

int? i;
bool? b;

代码举例

        private void Form1_Load(object sender, EventArgs e)
        {
            // byte范围 0-255
            byte b = 255;
            // short的范围 -32768 ~ 32767
            short s = 32767;
            // int的范围 -2147483648 - 2147483648
            int i = 0;
            // long的范围 -9*10^18 ~ 9*10^18
            long l = 0;
            // float的范围  -3.4*10^38 ~ 3.4*10^38
            // 如果赋值给一个变量是小数 且不加任何后缀 系统会将其默认为double类型 此时若用float声明变量去接受 则会报错
            float f = 1.1f;
            MessageBox.Show(f.ToString());
            // double
            double d = 1.1;
            // decimal的范围 (-7.9*10^28 ~ 7.9*10^28)/ (10^(0~28))
            decimal dm = 1.1M; // 浮点型之间的转换只有float转换为double一种
            // 真假类型 只有true和false
            bool b1 = true;
            bool b2 = false;
            bool b3 = true;
            MessageBox.Show(b1.ToString());
            // 字符串类型
            string str = "hello world !";
            // 字符类型
            char c = 'c';
            // 空类型
            string i_isNull = null;
            i_isNull = ""; // 注意区分 两者有本质区别
        }

表达式与运算符

  • 表达式由操作数运算符构成。

算术运算符

运算符描述实例
+把两个操作数相加A + B 将得到 30
-从第一个操作数中减去第二个操作数A - B 将得到 -10
*把两个操作数相乘A * B 将得到 200
/分子除以分母B / A 将得到 2
%取模运算符,整除后的余数B % A 将得到 0
++自增运算符,整数值增加 1A++ 将得到 11
--自减运算符,整数值减少 1A-- 将得到 9

关系运算符

运算符描述实例
==检查两个操作数的值是否相等,如果相等则条件为真。(A == B) 不为真。
!=检查两个操作数的值是否相等,如果不相等则条件为真。(A != B) 为真。
检查左操作数的值是否大于右操作数的值,如果是则条件为真。(A > B) 不为真。
<检查左操作数的值是否小于右操作数的值,如果是则条件为真。(A < B) 为真。
>=检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。(A >= B) 不为真。
<=检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。(A <= B) 为真。

逻辑运算符

运算符描述实例
&&称为逻辑与运算符。如果两个操作数都非零,则条件为真。(A && B) 为假。
II称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。(A II B) 为真。
!称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。!(A && B) 为真。

位运算符

位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:

image.png