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

C# 编程基础:注释、变量、常量、数据类型和自定义类型

C# 是一种功能强大的面向对象编程语言,它提供了丰富的特性来帮助开发者编写清晰、高效的代码。本文将介绍C#中的注释、变量、常量、基本数据类型以及如何创建和使用自定义类型。

注释

注释用于解释代码的目的,它们不会被程序执行。

  • 单行注释使用 //
  • 多行注释使用 /* ... */
// 单行注释
int a = 10;/*** 多行注释*/
static int FeetToInches(int feet)
{return feet * 12;
}

变量

变量是存储数据的容器,C#中的变量需要先声明后使用。

int x = 2023; // 整数变量
string message = "Hello world"; // 字符串变量
bool simpleVar = false; // 布尔变量

常量

常量是一旦赋值后其值就不可更改的变量,使用 const 关键字声明。

const int b = 30; // 常量

基本数据类型

C# 有多种基本数据类型,包括整数、浮点数、字符、字符串和布尔值。

  • 整数类型:int, long, short, byte, uint, ulong, 等。
  • 浮点类型:float, double, decimal
  • 字符类型:char
  • 字符串类型:string
  • 布尔类型:bool

字符串操作

字符串是字符的序列,C# 提供了多种字符串操作方法。

string uperMessage = message.ToUpper(); // 转换为大写
message = message + x.ToString(); // 连接字符串和整数

自定义类型

自定义类型是通过类或结构体定义的。它们可以包含数据成员和函数成员。

成员

数据成员通常是指类的属性或字段。

public class UnitCoverter
{int ratio; // 数据成员// ...
}

构造器

构造器用于初始化类的对象。

public UnitCoverter(int unitRatio)
{ratio = unitRatio;
}

实例化

创建类的实例,也就是对象。

UnitCoverter feetToInchesCoverter = new UnitCoverter(12);

方法

函数成员是指类中定义的方法,用于执行特定的功能。

public int covert(int unit)
{return unit * ratio;
}

静态成员

静态成员属于类本身,而不是类的实例。

public static int Population; // 静态成员

实例:单位转换器

下面是一个简单的单位转换器类的示例,它演示了如何定义和使用自定义类型。

public class UnitCoverter
{int ratio;public UnitCoverter(int unitRatio){ratio = unitRatio;}public int covert(int unit){return unit * ratio;}
}// ...UnitCoverter feetToInchesCoverter = new UnitCoverter(12);
Console.WriteLine(feetToInchesCoverter.covert(30)); // 输出 360

实例:熊猫类

另一个示例是一个表示熊猫的类,它演示了如何使用构造器和静态成员。

public class Panda
{public string Name;public static int Population;public Panda(string name){Name = name;Population = Population + 1;}
}// ...Panda p1 = new Panda("Pan Dee");
Panda p2 = new Panda("Pan Dah");
Console.WriteLine(p1.Name); // 输出 Pan Dee
Console.WriteLine(Panda.Population); // 输出 2

通过这些基础概念,你可以开始构建自己的C#应用程序。无论是控制台应用程序、Web 应用程序还是游戏,C# 提供了强大的工具和框架来支持你的开发需求。

http://www.lryc.cn/news/361391.html

相关文章:

  • 网络原理-三
  • 使用Ollama搭建一个免费的聊天机器人
  • 计算机网络之快重传和快恢复以及TCP连接与释放的握手
  • vue 引用第三方库 Swpier轮播图
  • RabbitMQ-直连交换机(direct)使用方法
  • 942. 增减字符串匹配 - 力扣
  • 2024华为OD机试真题-机器人搬砖-C++(C卷D卷)
  • 【DevOps】深入了解RabbitMQ:AMQP协议基础、消息队列工作原理和应用场景
  • Mysql 技术实战篇
  • App自动化测试_Python+Appium使用手册
  • k8s-部署对象存储minio
  • go常用命令
  • 【中年危机】程序猿自救指南
  • vueRouter路由总结
  • 算法工程师需要学习C++的哪些知识?
  • CTF网络安全大赛简单的web抓包题目:HEADache
  • Qt Creator创建Python界面工程并打包为可执行exe文件
  • 基于单片机的步进电机控制系统的研究
  • BioPorto胰高血糖素样肽-1抗体(GLP-1)
  • Go 语言字符串及 strings 和 strconv 包
  • 政府窗口服务第三方评估报告如何写
  • 若依前后端分离Spring Security新增手机号登录
  • Oracle操作扩可变字符长度交易影响分析-较小
  • 全栈工程师需要具备哪些技能?
  • 用java实现客服聊天+网络爬虫下载音乐(java网络编程,io,多线程)
  • 基于springboot+vue的医院信息管理系统
  • 乡村振兴与农业科技创新:加大农业科技研发投入,推动农业科技创新,促进农业现代化和美丽乡村建设
  • Java 雪花算法:分布式唯一ID生成的魔法秘籍
  • mybatis配置环境流程
  • UE5增强输入系统入门