掌握 C# 变量:在代码中声明、初始化和使用不同类型的综合指南
C# 变量
变量是用于存储数据值的容器。
在 C#
中,有不同类型的变量(用不同的关键字定义),例如:
int
- 存储整数(没有小数点的整数),如 123 或 -123double
- 存储浮点数,有小数点,如 19.99 或 -19.99char
- 存储单个字符,如 'a' 或 'B'。Char
值用单引号括起来string
- 存储文本,如 "Hello World"。String
值用双引号括起来bool
- 存储具有两个状态的值:true
或false
声明(创建)变量:
要创建一个变量,必须指定类型并为其赋值:
type variableName = value;
其中 type
是 C#
类型(例如 int
或 string
),variableName
是变量的名称(例如 x
或 name
)。等号用于为变量赋值。
创建存储文本的变量:
创建一个名为 name
的 string
类型变量,并为其赋值 "John":
string name = "John";
Console.WriteLine(name);
创建存储数字的变量:
创建一个名为 myNum
的 int
类型变量,并为其赋值 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
存储值 5y
存储值 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
类型的变量(x
、y
和 z
),并为它们赋了不同的值。在第二个示例中,我们声明了三个 int
类型的变量,然后将它们都赋予了相同的值 50。
C# 标识符
所有的 C#
变量都必须使用唯一的名称来标识。
这些唯一的名称被称为标识符。
标识符可以是简短的名称(如 x
和 y
)或更具描述性的名称(age
、sum
、totalVolume
)。
注意: 建议使用描述性名称,以创建易于理解和维护的代码:
// 好的
int minutesPerHour = 60;
// 可以,但不容易理解 m 实际上是什么
int m = 60;
命名变量的一般规则是:
- 名称可以包含字母、数字和下划线字符(
_
) - 名称必须以字母或下划线开头
- 名称应以小写字母开头,不能包含空格
- 名称区分大小写(
myVar
和myvar
是不同的变量) - 保留字(如 C# 关键字,如
int
或double
)不能用作名称
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注
掌握 C# 变量:在代码中声明、初始化和使用不同类型的综合指南的更多相关文章
- <%!%>声明的变量和在<%%>中声明的变量的区别
通过写一个demo,查看Jsp_Servlet源码可知: <%!%>声明的变量是类似类的成员变量,<%%>中的变量是方法中的变量. 参考博客: http://www.cnblo ...
- 【SQL】小心在循环中声明变量——浅析SQL变量作用域
本文适用:T-SQL(SQL Server) 先看这个语句: --跑3圈 BEGIN --每圈都定义一个表变量,并插入一行 DECLARE @t TABLE(Col INT PRIMARY KEY) ...
- [改善Java代码]静态变量一定要先声明后赋值
建议32: 静态变量一定要先声明后赋值 这标题看着让人很纳闷,什么叫做变量一定要先声明后赋值?Java中的变量不都是先声明后使用的吗?难道还能先使用后声明?能不能暂且不说,我们先来看一个例子,代码如下 ...
- Effective C++学习笔记:初始化列表中成员列出的顺序和它们在类中声明的顺序相同
类成员的默认初始化顺序是按照声明顺序进行, 如果使用初始化列表初始化成员变量, 则必须按照成员变量的声明顺序进行; 否则, 在变量之间交替赋值时, 会产生, 未初始化的变量去赋值其他变量; 同时GCC ...
- java类成员变量与代码块初始化
首先根据下面的这个一段代码:引入关于java初始化顺序的问题public class InitationTest extends Person { public InitationTest() { S ...
- JavaScript 中定义变量时有无var声明的区别
关于JavaScript中定义变量时有无var声明的区别 var a=5; //正确 a=5; //正确 在javascript中,以上两种方法都是定义变量的正确方法.微软的Script56.CHM中 ...
- 面向对象设计中private,public,protected的访问控制原则及静态代码块的初始化顺序
第一:private, public, protected访问标号的访问范围. private:只能由 1.该类中的函数 2.其友元函数访问 不能被任何其他访问,该 ...
- C++中类成员变量在初始化列表中的初始化顺序
引子:我们知道,C++中类成员变量的初始化顺序与其在类中的声明顺序是有关的. 先看代码: class TestClass1 { public: TestClass1() { cout << ...
- 错误: 从内部类中访问本 地变量vvv; 需要被声明为最终类型
从github 下载了源码, 进行编译, 出现了下面的错误 E:\downloads\ff\elasticsearch-master\elasticsearch-master>GRADLE :b ...
- iOS 在类实现定义中声明成员变量的怪异方式
WebGL 规范(WebGL Specification) 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致&quo ...
随机推荐
- springboot多线程TaskExecutor的使用,以及使用@Async实现异步调用
目录 @Async实现异步调用 pom.xml 启动类 定义controller 定义接口 实现类 将isDone换程CountDownLatch来判断线程是否执行完实例化CountDownLatch ...
- 【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
问题描述 在Azure Spring Cloud中,通过ActiveDirectoryMSI方式来连接到SQL Service,需要如何配置呢? 问题分析 在SQL Service中启用Active ...
- Linux 系统编程从入门到进阶 学习指南
引言 大家好,我是小康 ,今天我们来学习一下 Linux 系统编程相关的知识.Linux 系统编程是连接高级语言和硬件的桥梁,它对深入理解计算机系统至关重要.无论你是打算构建高性能服务器还是开发嵌入式 ...
- gitee github 左侧栏树形显示插件 Octotree codetree 浏览器插件
起因 看到一位仁兄用gitee做仓库 https://gitee.com/zhengqingya/java-developer-document 然后左侧栏挺方便(抖音视频) 下载 chrome扩展市 ...
- vue css 背景图 路径 记得加波浪号 background-image: url("~@/assets/images/d.jpg");
vue css 背景图 路径 记得加波浪号 background-image: url("~@/assets/images/d.jpg"); 为什么 不加波浪号,图片显示不出来哟
- vscode ctrl + 鼠标左键 点击 不进入组件,弹出一个框再点才进入的问题 目录名和vue文件名 开头不能大写 需从起生效
vscode ctrl + 鼠标左键 点击 不进入组件,弹出一个框再点才进入的问题 目录名和vue文件名 开头不能大写 需从起生效 就是这个,很讨厌,原来是开头不能大写字母的问题造成的. 小写字母就没 ...
- 基于六轴传感器MPU6050的物体移动监测报警系统
一 系统简介 1.简介 MPU-60x0 是全球首例 9 轴运动处理传感器.它集成了 3 轴MEMS陀螺仪,3 轴MEMS加速度计,以及一个可扩展的数字运动处理器 DMP(Digital Motion ...
- 【VMware vSAN】全新vSAN 8 ESA快速存储架构配置文件服务并创建文件共享。
早在2020年,VMware就发布了vSphere7.vSAN7.VCF4等等产品的更新,当时随着云原生的火热,基于容器技术的现代应用程序快速发展,Docker.Kubernetes这些容器平台被广泛 ...
- 工作记录:Vue3.0新特性
简单对比 Vue2.x 与 Vue3.x 响应式 Vue2 使用Object.defineProperty劫持对象的属性 Vue3 使用Proxy 直接代理对象 由于Object.defineProp ...
- 记录--前端路由 hash 与 history 差异
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 简单介绍 Vue Router Vue Router 是 Vue.js 官方的路由插件,它和 Vue.js 是深度集成的,适合用于构建单页 ...