C# 基础知识 (1)

文章目录

写在前面

C# (英文名为 CSharp) 。.NET 是一个开发平台,而 C# 是一种在 .NET 开发平台上使用的编程语言

1、第一个C#程序

namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
			// 这是注释
            Console.Write("第一个 C# 程序, ");
            Console.WriteLine("这是第一个控制台程序");
        }
    }
}
  • 第 11 行到第 13 行是 Main 方法,每个类中只能有一个
  • Console.Write(); // 打印 , Console.WriteLine(); // 换行打印

2、基本数据类型

整数类型

类 型 取值范围
sbyte 有符号数,占用1个字节,-27〜27-1
byte 无符号数,占用1个字节,0〜28-1
short 有符号数,占用2个字节,-215〜215-1
ushort 无符号数,占用2个字节,0〜216-1
int 有符号数,占用4个字节,-231〜231-1
uint 无符号数,占用4个字节,0〜232-1
long 有符号数,占用8个字节,-263〜263-1
ulong 无符号数,占用8个字节,0〜264-1

浮点型

类 型 取值范围
float 单精度浮点型,占用4个字节,最多保留7位小数
double 双精度浮点型,占用8个字节,最多保留16位小数

其他类型

类 型 说明
char 字符型,例如 ‘a’、‘中’ 等
String 字符串类型,例如 “abc”、“123” 等 (String不是基本数据类型)
bool 布尔,只有 true 和 false两个值

4、各种符号

4.1、转义字符

转义字符 说明
\’ 单引号
\" 双引号
\ 反斜杠
\0
\a 警告(产生蜂鸣音)
\b 退格
\f 换页
\n 换行
\r 回车
\t 水平制表符
\v 垂直制表符

4.2、算术运算符

运算符 说 明
+ 加法
- 减法
* 乘法
/ 除法
% 取余

实例:

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("千位" +1234 / 1000);
        Console.WriteLine("百位" + 1234 / 100 % 10);
        Console.WriteLine("十位" + 1234 / 10 % 10);
        Console.WriteLine("个位" + 1234 % 10);
        Console.WriteLine("连接字符串:" + "123" + "456");
    }
}

4.3、逻辑运算符

逻辑运算符 说明
&& 逻辑与,如果运算符两边都为 True,则整个表达式为 True,否则为 False;如果左边操作数为 False,则不对右边表达式进行计算,相当于“且”的含义
|| 逻辑或,如果运算符两边有一个或两个为 True,整个表达式为 True,否则为 False;如果左边为 True,则不对右边表达式进行计算,相当于“或”的含义
! 逻辑非,表示和原来的逻辑相反的逻辑

4.4、比较运算符

运算符 说 明
== 相等判断
!= 不等判断
> 表示左边表达式的值大于右边表达式的值
< 表示左边表达式的值小于右边表达式的值
>= 表示左边表达式的值大于等于右边表达式的值
<= 表示左边表达式的值小于等于右边表达式的值

4.5、位运算符

运算符 说明
& 按位与。两个运算数都为 1,则整个表达式为 1,否则为 0;也可以对布尔型的值进行比较,相当于“与”运算,但不是短路运算
| 按位或。两个运算数都为 0,则整个表达式为 0,否则为 1;也可以对布尔型的值进行比较,相当于“或”运算,但不是短路运算
~ 按位非。当被运算的值为 1 时,运算结果为 0;当被运算的值为 0 时,运算结果为 1。该操作符不能用于布尔型。对正整数取反,则在原来的数上加 1,然后取负数;对负整数取反,则在原来的数上加 1,然后取绝对值
^ 按位异或。只有运算的两位不同结果才为 1,否则为 0
<< 左移。把运算符左边的操作数向左移动运算符右边指定的位数,右边因移动空出的部分 补 0
>> 有符号右移。把运算符左边的操作数向右移动运算符右边指定的位数。如果是正值,左侧因移动空出的部分补 0;如果是负值,左侧因移动空出的部分补 1
>>> 无符号右移。和 >> 的移动方式一样,只是不管正负,因移动空出的部分都补 0

4.6、三元运算符

布尔表达式 ? 表达式 1: 表达式 2

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("10为:"+(10 % 2 == 0 ? "偶数":"奇数"));
    }
}

4.7、赋值运算符

符号 说明
= x=y,等号右边的值给等号左边的变量,即把变量 y 的值赋给变量 x
+= 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,等同于 x=x+1
x-- 或 --x,等同于 x=x-1

4.8、运算符的优先级

运算符 结合性
.(点)、()(小括号)、[](中括号) 从左到右
+ (正)、-(负)、++ (自增)、–(自减)、~(按位非)、!(逻辑非) 从右到左
* (乘)、/ (除)、% (取余) 从左向右
+ (加)、-(减) 从左向右
<<、>>、>>> 从左向右
<、<=、>、>= 从左向右
==、!= 从左向右
& 从左向右
| 从左向右
^ 从左向右
&& 从左向右
|| 从左向右
?: 从右到左
=、+=、-=、*=、/=、%=、&=、 =、^=、~=、<<=、>>=、>>>=

5、变量与常量

变量使用举例

class Program
{
    static void Main(string[] args)
    {
        int num1 = 100;
        double num2 = 100.123;
        bool isFlag = true;
        String name = "Hello";

		// 变量换值
        int temp;
        temp = a;
        a = b;
        b = temp;
    }
}

const 定义的变量是常量,在第一次被赋值后值就不能再改变

    static void Main(string[] args)
    {
        const double PI = 3.14;
    }

6、命名规则

变量的命名:驼峰命名,首单词的首字母小写。
常量的命名:所有字母大写。
类的命名:首字母大写,如 Student。
接口的命名:通常都是以 I 开头,第二个字母也大写,如 ICompare。
方法的命名:首字母大写,一般用动词,如 AddUser。

上一篇:Object 常用API


下一篇:Fabricjs对Canvas画布和对象的事件监听