当前位置:
首页
文章
后端
详情

C# 编程语言学习系列(二)

学习 C# 的第二天,今天将学习一下 C# 的变量以及它的基础数据类型的内容。

首先回答一下上一篇文章所提到的两个疑惑:

(1)一个程序中既然可以有多个命名空间和类,那么如何将它们联系在一起?

(2)一个程序中命名多个命名空间和类,这样的操作值得推荐吗?

一个程序中有多个命名空间和类,也是一样可以使用 ​using ​关键字来引用命名空间。​using ​关键字的使用要么是放在所有元素的前面,要么放在命名空间内定义的所有元素之前。其他的命名空间的类方法使用,可以通过类.方法名来调用。

至于第二个是否放在一起,这应该是看个人习惯。笔者个人喜欢是拆分开来,一是让程序看上去干净明了,不会显得混杂;第二整理起来,也比较轻松一些。

一、变量

变量的定义

<data_type> <value_name>;
<data_type> <value_list>;

在 C# 中,每个变量都会有一个特定的类型。因此,在声明变量之前,就得先定义这个变量属于什么数据类型的。

变量可以一个一个定义,同时也是可以连续定义。如 value_list 就是由逗号隔开的标识符组成的。

int x, y, z;
char c, n;
float e, f;

连续定义的前提是,这些变量都是同属于一个数据类型的。

初始化赋值

C# 中在定义完数据类型之后,就可以给变量赋值相应类型的值。

例如:

int x, y, z;
x = 1;
y = 2;
z = 3;

char c, n;
c = 'c';
n = 'n';

除了定义后在赋值的操作,可以直接在定义变量的类型时候,同时赋予它变量值:

int x=1, y=2, z;
char c='c', n='n';

用户输入值

用户可以通过​&nbsp;Console.ReadLine()&nbsp;​方法来输入值。不过,这些值默认都是属于字符串类型的,因此如果想要将输入转换的值转换为其他的类型。例如输入整数,则可以使用​&nbsp;Convert.ToInt32(string);&nbsp;​将对应的字符串转换为整数类型:

int m = Convert.ToInt32(Console.ReadLine());

标识符

标识符是用来识别类、变量、函数或者任何其他用户定义的项目。标识符必须遵守以下的基本规则:

  • 标识符必须以字母、下划线或者@开头,后面可以是数字、字母、下划线、@符号。
  • 标识符第一个数字一定不能是个数字。
  • 标识符不能包含任何嵌入的空格或者符号。
  • 标识符不能是 C# 的关键字。除非关键字前面有一个@前缀。例如:@if是有效的标识符,但if不是。
  • 标识符必须区分大小写,大写和小写字母会被认为是不同的字母。
  • 标识符不能和 C# 类库名相同。

二、数据类型

C# 中,变量可以被分为:值类型、引用类型和指针类型三种数据类型。

值类型

罗列一些常用的值类型:

  • bool(默认值:false)
  • int(默认值:0)
  • double(默认值:0.0D)
  • float(默认值:0.0F)
  • decimal(默认值:0.0M)
  • char(默认值:’\0’)

引用类型

引用类型不包含存储在变量中的实际数据,但它们包含对变量的引用。

引用类型指向的是一个内存位置。

内置的引用类型:

对象类型(Object)

对象类型是 C# 通用类型系统中所有数据类型的最终积累。

当一个值类型转换为引用类型,该行为被称为装箱;当一个引用类型转换为值类型,该行为被称为拆箱。

object obj; // 申明对象类型
obj = 100; // 这是装箱

动态类型(Dynamic)

可以存储任何类型的值在动态数据类型变量中,这些变量的类型检查是检查时发生的。

dynamic = 100;

与对象类型相似,但是对象类型是在编译时发生的,而动态类型是在检查时发生的。

字符串类型(String)

char 是字符类型,只能赋给它一个值。

字符串则是可以赋给它一串字符。

char c ='n';
string s = "I am the king!"

除此之外,char 使用单引号包裹着字符,string 是使用双引号包裹着字符串。

字符串除了可以用双引号来进行分配,同时也可以使用@双引号来进行分配。

例如:

string s = @"The first word
good nice \n
biuuuuuuuuu!";

在这里插入图片描述

字符串前面加上 @,被称为逐字字符串。在这其中,转移符号 \ 将会失效。同时也是按照在程序中的格式来输出文本。

指针类型(Pointer Types)

指针类型变量存储另一种类型的内存地址。

声明语法:

type* identifier;

char* cptr;
int* iptr;

三、总结

C# 变量的定义,初始化。用户输入值的转换,以及标识符要遵循的规则。

三大数据类型:值类型、引用类型和指针类型。

其中了解了值类型的部分常用数据类型,引用类型的三个类型的介绍。


免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型