当前位置: 首页 > article >正文

C#学习笔记(四)

C#学习笔记(四)

    • 第 二 章 命名空间和类、数据类型、变量和代码规范
      • 三、C#的数据类型和变量
        • 1.C#中的值类型
          • 1.1 整型
          • 1.2 浮点型
          • 1.3 字符型
          • 1.4 字符串型
          • 1.5 布尔类型
          • 1.6 日期类型
        • 2.C#中的引用类型
          • 2.1 引用类型包括类、接口、数组、委托、字符串等。
          • 2.2 特殊的引用类型
          • 2.3 引用类型的特征
        • 3.C#变量的使用规则
          • 3.1C#命名规范

第 二 章 命名空间和类、数据类型、变量和代码规范

三、C#的数据类型和变量

在C#中常用的数据类型可以分为两大类,分别是“数值型”和“引用类型“。其中值类型包括整型、浮点型、字符型、布尔型、枚举、日期型等;引用类型包括类、接口、数组、委托、字符串等。

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

注意:在 C#中,默认的整形是 int 类型。

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

只能存放一个字符,占用两个字节,能存放一个汉字。使用 char 关键字,例如 ‘a’、‘中’ 等。

1.4 字符串型

它是一个引用类型,在字符串类型中存放的字符数可以认为是没有限制的, 使用string 关键字,例如"abc"、“123” 等。
有些特殊字符串不能直接输出,如双引号等,需要转义字符。

转义等价字符
\’单引号
\"双引号
\\反斜杠
\r回车
\n换行
\t制表符
1.5 布尔类型

在 C# 中布尔类型使用 bool 来声明,它只有两个值,即 true 和 false。

1.6 日期类型

在 C#中,使用 datetime 来表示日期类型,使用方法如下
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/88f46f1f763f40979399f4ae2a3b36ab.pn

2.C#中的引用类型
2.1 引用类型包括类、接口、数组、委托、字符串等。
2.2 特殊的引用类型

其中特殊的有字符串,字符串属于引用类型,但是在实际应用中,它最后表现的效果还是“值类型的效果”。
了解地址都知道这里面的门道有多深
如图

 			string str1 = "北上广";
            string str2 = str1;
            Console.WriteLine("str1:"+str1+"\nstr2:"+str2);
            str2 = "深";
            Console.WriteLine("str1:" + str1 + "\nstr2:" + str2);

运行结果
str1:北上广
str2:北上广
str1:北上广
str2:深
这里表现的特征是值的类型特征。

string str2 = str1;

因为这一步代码的实现过程是将str1的数据“北上广”复制了一份给str2。所以后面更改str2不会对str1造成影响。

2.3 引用类型的特征

在这里插入图片描述

  int[] shuzu1 = {1, 2, 3};
  int[] shuzu2 = shuzu1;
  Console.WriteLine("shuzu1:"+shuzu1[0]+ ','+shuzu1[1]+','+ shuzu1[2]);
  Console.WriteLine("shuzu2:" + shuzu2[0] + ',' + shuzu2[1] + ',' + shuzu2[2]);
  shuzu2[0] = 9;
  Console.WriteLine("shuzu1:" + shuzu1[0] + ',' + shuzu1[1] + ',' + shuzu1[2]);
  Console.WriteLine("shuzu2:" + shuzu2[0] + ',' + shuzu2[1] + ',' + shuzu2[2]);

运行结果
shuzu1:1,2,3
shuzu2:1,2,3
shuzu1:9,2,3
shuzu2:9,2,3
可以看到 shuzu2[0] = 9;只进行shuzu2的修改,shuzu1的值也进行了同步修改,主要原因是int[] shuzu2 = shuzu1;这步的过程是将shuzu1的地址给到shuzu2而不关心内部数据。也就是看似是两个数组,其实他们两个都是指向了同一个内存数据,这就是引用类型。对象类型、委托、接口,等都是这种类型

3.C#变量的使用规则

变量是由变量名称、变量值、存储地址三部分组成。

3.1C#命名规范

与PLC不同,C#变量名区分大小写如int All;和int all;是两个变量。

  • 类、属性、方法命名使用 Pascal 命名法,也就是首字母大写。如Name、Age、DateOfBirth。
  • 变量组成由英文字母(AZ,az)、数字(0~9)、下划线(_),除此之外
    不能含有其他字符。变量开头只能以字母或下划线开头比如_age,禁止使用 C#关键字(如 int、this、class…)。
  • 方法内的局部变量使用 Camel(意思是骆驼)命名法,首字母小写。比如 stuName、stuAge、myStudentCount

http://www.kler.cn/news/356878.html

相关文章:

  • TCP/IP传输协议,易懂!!!
  • PHP(一)从入门到放弃
  • 速盾:cdn 速度取决于什么?
  • 【H2O2|全栈】关于CSS(14)如何完成常规的页面布局
  • 简单实现通过电脑操作手机
  • 【优选算法】探索双指针之美(一):双指针与单调性的完美邂逅
  • MySQL 异常: “Host ‘xxx‘ is not allowed to connect to this MySQL server“
  • IMX6UL的RGB的显示实验
  • 一起搭WPF架构之LiveCharts.Wpf的简单了解与安装
  • 微信小程序-封装通用模块
  • Mac 远程 Windows 等桌面操作系统工具 Microsoft Remote Desktop for Mac 下载安装详细使用教程
  • 《仓库猎手模拟》风灵月影游戏辅助使用教程
  • 数据库原理与应用(基于MySQL):实验六数据查询
  • 【Golang】Go语言http编程底层逻辑实现原理与实战
  • 大数据治理:技术挑战与解决方案
  • 免杀对抗—内存加载UUID标识IPV4地址MAC地址
  • webpack自定义插件 ChangeScriptSrcPlugin
  • 结合seata和2PC,简单聊聊seata源码
  • 暴雨讲堂:AI已成为交叉学科科研工具
  • 监督学习、无监督学习、半监督学习、强化学习、迁移学习、集成学习分别是什么对应什么应用场景