欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C#基础篇(数据类型、类型转化、占位符等)

程序员文章站 2022-07-08 13:21:10
...

学习C#

本人属于自学C#,且之前已经学习过C++。而写本文章纯属是为了加深记忆,便于学习。若对C#的理解有错误,望指出,谢谢。

注释符

  1. 单行注释://
  2. 多行注释:/*要注释的内容 */
  3. 文档注释:///用于注释的函数和类

VS中的快捷键

  1. 注释:ctrl+k+c
  2. 取消注释:ctrl+k+u
  3. 多行注释:ctrl+shift+/
  4. 撤销:ctrl+z
  5. 保存:ctrl+s
  6. 对齐代码:ctrl+k+d
  7. shift+home:向左边全选
  8. shift+end:向右边全选

输入输出

C#中的输入输出完全不同于C++。C#中的输出为:Console.WriteLine(),输入为Console.ReadLine()。在C#中输出后需要添Console.ReadKey()使程序暂停,否则程序将一闪而过。

			Console.WriteLine("Hello world!!");
            Console.ReadKey();//可以比较添加与不添加的区别
			
			Console.WriteLine("请输入你的名字:");
            string str = Console.ReadLine();//字符串接收控制台输入的数据

数据类型

C#是一种强类型语言,每个变量和常量都属于一种数据类型。
C#基础篇(数据类型、类型转化、占位符等)
不同于C++的数据类型

  1. sbyte和byte数据类型。其中值得注意的是sbyte是带符号字节型,而byte是不带符号字节型。且C++中无这两种数据类型。
  2. char类型,需要注意的是widows中的文本文档并不识别换行符\n,而识别\r\n(用来换行)。
  3. bool类型。在C/C++中可以将bool类型转换为int类型,而在C#中不可。例如:int a = (2<3);//在C#中语法错误
  4. decimal类型不同于float和double,在定义decimal变量时需要在数据的后面添加m或者M后缀。一般用来存钱。且C++中无这种数据类型。
  5. 无符号整型。在C++中需要添加关键字unsigned,而C#中需要添加u。

类型转换

自动类型转换

自动类型转换又称隐式类型转换。其与C/C++等语言语法相同,当从小数据类型转换为大数据类型,就会发生类型转换。

			int n = 10;
            long l = n;//隐式类型转换,int----》long
            Console.WriteLine(l);
            Console.ReadKey();

强制类型转换

强制类型转换又称显示类型转换。当从大数据类型转换为小数据类型,就会发生类型转换。强制类型转换需要数据不能超过小数据的范围,否则会发生数据溢出。语法:(待转换的类型)要转换的值。

			long l = 10;
            int n = (int)l;//(int)强制类型转换long----》int
            Console.WriteLine(l);
            Console.ReadKey();

Convert类进行类型转换

Convert是C#中常见的类。Convert类用于把一个值的类型转换为另一个值的类型。使用方法:Convert.方法名(参数)

方法 方法类型 说明
ToBoolean 静态方法 将数据转换为Boolean类型
ToDataTime 静态方法 将数据转换为日期时间类型
ToInt16 静态方法 将数据转换为16位整数类型
ToInt32 静态方法 将数据转换为32位整数类型
ToInt64 静态方法 将数据转换为64位整数类型
ToNumber 静态方法 将数据转换为double类型
ToObject 静态方法 将数据转换为Object类型
ToString 静态方法 将数据转换为string类型

转义字符。

  1. //:输出显示为:/
  2. “:输出显示为:”
  3. \n:输出为换行。
  4. \r\n:windows中的换行
  5. \t:相当于TAB键
  6. @:1.取消\在字符串中的转义作用。2.将文本按照编辑的原格式输出
    @符号的两种使用方法:
			//@用于取消‘\’的转义
			string path = @"C:\Users\Lenovo";//输出:C:\Users\Lenovo
            Console.WriteLine(path);
            Console.ReadKey();
			//===============分割线================
			//@用于将文本按照编辑的原格式输出
			//情比较输出这两个,了解@符号的作用
            Console.WriteLine(@"飞流直下三千尺
                疑是银河落九天");
            Console.WriteLine(@"飞流直下三千尺
疑是银河落九天");
			Console.ReadKey();

占位符

占位符:先挖坑,再填坑。

			/*
             * 占位符:先挖坑,再填坑
             * 占位符使用方法:
             * 占位符按照挖坑的顺序输出
             */
            Console.WriteLine("第一个数字:{0},第个二数字:{1},第三个数字:{2}", n1, n2, n3);//{}占位符   输出:10 20 30
            Console.WriteLine("第一个数字:{0},第个二数字:{2},第三个数字:{1}", n1, n2, n3);//{}占位符   输出:10 30 20
            Console.ReadKey();

使用占位符保留小数

			float f = 3.14159f;
            Console.WriteLine("{0:0.00}", f);//保留小数后两位,输出3.14
            Console.ReadKey();

未完待续