C# 变量

变量是用于存储数据值的容器。

C# 中,有不同类型的变量(用不同的关键字定义),例如:

  • int - 存储整数(没有小数点的整数),如 123 或 -123
  • double - 存储浮点数,有小数点,如 19.99 或 -19.99
  • char - 存储单个字符,如 'a' 或 'B'。Char 值用单引号括起来
  • string - 存储文本,如 "Hello World"。String 值用双引号括起来
  • bool - 存储具有两个状态的值:truefalse

声明(创建)变量:

要创建一个变量,必须指定类型并为其赋值:

type variableName = value;

其中 typeC# 类型(例如 intstring),variableName 是变量的名称(例如 xname)。等号用于为变量赋值。

创建存储文本的变量:

创建一个名为 namestring 类型变量,并为其赋值 "John":

string name = "John";
Console.WriteLine(name);

创建存储数字的变量:

创建一个名为 myNumint 类型变量,并为其赋值 15:

int myNum = 15;
Console.WriteLine(myNum);

您还可以声明一个变量而不赋值,并在稍后赋值:

int myNum;
myNum = 15;
Console.WriteLine(myNum);

请注意,如果为现有变量赋一个新值,它将覆盖先前的值:

int myNum = 15;
myNum = 20; // myNum 现在是 20
Console.WriteLine(myNum);

其他类型:

演示如何声明其他类型的变量:

int myNum = 5;
double myDoubleNum = 5.99D;
char myLetter = 'D';
bool myBool = true;
string myText = "Hello";

C# 常量

如果您不希望其他人(或自己)覆盖现有值,可以在变量类型前添加 const 关键字。

这将声明变量为“常量”,这意味着它是不可更改且只读的:

const int myNum = 15;
myNum = 20; // 错误

当您希望一个变量始终存储相同的值,以防他人(或自己)破坏您的代码时,const 关键字非常有用。一个经常被称为常量的示例是 PI(3.14159...)。

注意: 您不能在不分配值的情况下声明常量变量。如果这样做,将会出现错误:A const field requires a value to be provided.

C# 显示变量

WriteLine() 方法通常用于将变量值显示到控制台窗口。

要将文本和变量结合起来,使用 + 字符:

string name = "John";
Console.WriteLine("Hello " + name);

您还可以使用 + 字符将一个变量添加到另一个变量:

string firstName = "John ";
string lastName = "Doe";
string fullName = firstName + lastName;
Console.WriteLine(fullName);

对于数值,+ 字符作为数学运算符(请注意,我们在此处使用 int(整数)变量):

int x = 5;
int y = 6;
Console.WriteLine(x + y); // 打印 x + y 的值

从上面的示例中,您可以预期:

  • x 存储值 5
  • y 存储值 6

然后我们使用 WriteLine() 方法来显示 x + y 的值,即 11

C# 多个变量

声明多个变量:

要声明同一类型的多个变量,请使用逗号分隔的列表:

int x = 5, y = 6, z = 50;
Console.WriteLine(x + y + z);

您还可以在一行上为多个变量赋相同的值:

int x, y, z;
x = y = z = 50;
Console.WriteLine(x + y + z);

在第一个示例中,我们声明了三个 int 类型的变量(xyz),并为它们赋了不同的值。在第二个示例中,我们声明了三个 int 类型的变量,然后将它们都赋予了相同的值 50。

C# 标识符

所有的 C# 变量都必须使用唯一的名称来标识。

这些唯一的名称被称为标识符。

标识符可以是简短的名称(如 xy)或更具描述性的名称(agesumtotalVolume)。

注意: 建议使用描述性名称,以创建易于理解和维护的代码:

// 好的
int minutesPerHour = 60; // 可以,但不容易理解 m 实际上是什么
int m = 60;

命名变量的一般规则是:

  • 名称可以包含字母、数字和下划线字符(_
  • 名称必须以字母或下划线开头
  • 名称应以小写字母开头,不能包含空格
  • 名称区分大小写(myVarmyvar 是不同的变量)
  • 保留字(如 C# 关键字,如 intdouble)不能用作名称

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

掌握 C# 变量:在代码中声明、初始化和使用不同类型的综合指南的更多相关文章

  1. <%!%>声明的变量和在<%%>中声明的变量的区别

    通过写一个demo,查看Jsp_Servlet源码可知: <%!%>声明的变量是类似类的成员变量,<%%>中的变量是方法中的变量. 参考博客: http://www.cnblo ...

  2. 【SQL】小心在循环中声明变量——浅析SQL变量作用域

    本文适用:T-SQL(SQL Server) 先看这个语句: --跑3圈 BEGIN --每圈都定义一个表变量,并插入一行 DECLARE @t TABLE(Col INT PRIMARY KEY) ...

  3. [改善Java代码]静态变量一定要先声明后赋值

    建议32: 静态变量一定要先声明后赋值 这标题看着让人很纳闷,什么叫做变量一定要先声明后赋值?Java中的变量不都是先声明后使用的吗?难道还能先使用后声明?能不能暂且不说,我们先来看一个例子,代码如下 ...

  4. Effective C++学习笔记:初始化列表中成员列出的顺序和它们在类中声明的顺序相同

    类成员的默认初始化顺序是按照声明顺序进行, 如果使用初始化列表初始化成员变量, 则必须按照成员变量的声明顺序进行; 否则, 在变量之间交替赋值时, 会产生, 未初始化的变量去赋值其他变量; 同时GCC ...

  5. java类成员变量与代码块初始化

    首先根据下面的这个一段代码:引入关于java初始化顺序的问题public class InitationTest extends Person { public InitationTest() { S ...

  6. JavaScript 中定义变量时有无var声明的区别

    关于JavaScript中定义变量时有无var声明的区别 var a=5; //正确 a=5; //正确 在javascript中,以上两种方法都是定义变量的正确方法.微软的Script56.CHM中 ...

  7. 面向对象设计中private,public,protected的访问控制原则及静态代码块的初始化顺序

    第一:private, public, protected访问标号的访问范围. private:只能由          1.该类中的函数          2.其友元函数访问 不能被任何其他访问,该 ...

  8. C++中类成员变量在初始化列表中的初始化顺序

    引子:我们知道,C++中类成员变量的初始化顺序与其在类中的声明顺序是有关的. 先看代码: class TestClass1 { public: TestClass1() { cout << ...

  9. 错误: 从内部类中访问本 地变量vvv; 需要被声明为最终类型

    从github 下载了源码, 进行编译, 出现了下面的错误 E:\downloads\ff\elasticsearch-master\elasticsearch-master>GRADLE :b ...

  10. iOS 在类实现定义中声明成员变量的怪异方式

    WebGL 规范(WebGL Specification) 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致&quo ...

随机推荐

  1. springboot多线程TaskExecutor的使用,以及使用@Async实现异步调用

    目录 @Async实现异步调用 pom.xml 启动类 定义controller 定义接口 实现类 将isDone换程CountDownLatch来判断线程是否执行完实例化CountDownLatch ...

  2. 【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI

    问题描述 在Azure Spring Cloud中,通过ActiveDirectoryMSI方式来连接到SQL Service,需要如何配置呢? 问题分析 在SQL Service中启用Active ...

  3. Linux 系统编程从入门到进阶 学习指南

    引言 大家好,我是小康 ,今天我们来学习一下 Linux 系统编程相关的知识.Linux 系统编程是连接高级语言和硬件的桥梁,它对深入理解计算机系统至关重要.无论你是打算构建高性能服务器还是开发嵌入式 ...

  4. gitee github 左侧栏树形显示插件 Octotree codetree 浏览器插件

    起因 看到一位仁兄用gitee做仓库 https://gitee.com/zhengqingya/java-developer-document 然后左侧栏挺方便(抖音视频) 下载 chrome扩展市 ...

  5. vue css 背景图 路径 记得加波浪号 background-image: url("~@/assets/images/d.jpg");

    vue css 背景图 路径 记得加波浪号 background-image: url("~@/assets/images/d.jpg"); 为什么 不加波浪号,图片显示不出来哟

  6. vscode ctrl + 鼠标左键 点击 不进入组件,弹出一个框再点才进入的问题 目录名和vue文件名 开头不能大写 需从起生效

    vscode ctrl + 鼠标左键 点击 不进入组件,弹出一个框再点才进入的问题 目录名和vue文件名 开头不能大写 需从起生效 就是这个,很讨厌,原来是开头不能大写字母的问题造成的. 小写字母就没 ...

  7. 基于六轴传感器MPU6050的物体移动监测报警系统

    一 系统简介 1.简介 MPU-60x0 是全球首例 9 轴运动处理传感器.它集成了 3 轴MEMS陀螺仪,3 轴MEMS加速度计,以及一个可扩展的数字运动处理器 DMP(Digital Motion ...

  8. 【VMware vSAN】全新vSAN 8 ESA快速存储架构配置文件服务并创建文件共享。

    早在2020年,VMware就发布了vSphere7.vSAN7.VCF4等等产品的更新,当时随着云原生的火热,基于容器技术的现代应用程序快速发展,Docker.Kubernetes这些容器平台被广泛 ...

  9. 工作记录:Vue3.0新特性

    简单对比 Vue2.x 与 Vue3.x 响应式 Vue2 使用Object.defineProperty劫持对象的属性 Vue3 使用Proxy 直接代理对象 由于Object.defineProp ...

  10. 记录--前端路由 hash 与 history 差异

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 简单介绍 Vue Router Vue Router 是 Vue.js 官方的路由插件,它和 Vue.js 是深度集成的,适合用于构建单页 ...