下面从四个方面对C#的基本语法进行简单介绍:

1. 数据类型

C#的类型可分为值类型和引用类型。值类型变量直接存储数据,引用类型变量则存储对象的引用。

  1. 值类型:涵盖整数类型(像intlong)、浮点类型(例如floatdouble)、布尔类型(即bool)以及枚举类型(enum)等。
  2. 引用类型:包含字符串(string)、数组(如int[])、类(class)、接口(interface)和委托(delegate)等。
  3. 特殊类型:有object(所有类型的基类)和dynamic(运行时类型检查)。

下面是一个简单的示例:

int number = 42;          // 值类型
string message = "Hello"; // 引用类型
object obj = number;      // 装箱操作

2. 变量与常量

在C#里,变量用于存储数据,使用前需要先声明。常量则是不可修改的值。

  1. 变量声明:格式为类型 变量名 = 初始值;,例如int age = 30;
  2. 隐式类型:可以使用var关键字,编译器会自动推断变量类型,比如var name = "Alice";
  3. 常量:使用const关键字声明,声明时必须进行初始化,而且之后不能再修改,例如const double PI = 3.14;

示例代码如下:

string name = "Bob";  // 显式类型声明
var score = 95.5;     // 隐式类型声明
const int MAX_SIZE = 100; // 常量声明

3. 运算符与表达式

C#提供了多种运算符,用于执行各种运算操作。

  1. 算术运算符:包括+(加)、-(减)、*(乘)、/(除)、%(取模)。
  2. 比较运算符:有==(等于)、!=(不等于)、>(大于)、<(小于)等。
  3. 逻辑运算符:例如&&(逻辑与)、||(逻辑或)、!(逻辑非)。
  4. 赋值运算符:如=+=*=等。
  5. 其他运算符:像条件运算符? :、空合并运算符??等。

示例如下:

int a = 10, b = 3;
bool isEqual = (a == b); // false
int result = a > b ? a : b; // 条件表达式,结果为10

4. 基本语句

C#的基本语句用于控制程序的流程。

  1. 条件语句

    • if-else:根据条件执行不同的代码块,例如:
      if (age >= 18) {Console.WriteLine("成年人");
      } else {Console.WriteLine("未成年人");
      }
      
    • switch:根据表达式的值选择执行的分支,例如:
      switch (day) {case DayOfWeek.Monday:Console.WriteLine("周一");break;default:Console.WriteLine("其他");
      }
      
  2. 循环语句

    • for:适用于已知循环次数的情况,例如:
      for (int i = 0; i < 5; i++) {Console.WriteLine(i);
      }
      
    • while:先判断条件,再执行循环体,例如:
      while (count < 10) {count++;
      }
      
    • foreach:用于遍历集合中的元素,例如:
      foreach (var item in list) {Console.WriteLine(item);
      }
      
  3. 跳转语句

    • return:用于从方法中返回结果并结束方法的执行。
    • break:用于跳出循环或switch语句。
    • continue:用于跳过当前循环的剩余部分,直接开始下一次循环。

以上就是C#基本语法的核心内容,这些是进一步学习C#编程的基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/87604.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/87604.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/87604.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c#笔记之类的常量、字段和属性

学习内容: 一、字段 字段是为了对象或者类型存储数据的,可以表达一个对象或者类型的状态;也叫做成员变量;注意字段是在类里面声明的;在方法里声明的是局部变量; 1.1实例字段 用来表示每个实例的状态;比如一个students类;要了解一个学生一般看名字和成绩;所以名字和…

Linux 常用命令(入门)

Linux 常用命令 一、Linux 命令基础 (一)命令格式 Linux 命令的一般格式为:command [-options] [parameter1] … 。其中,command 是命令名,通常是相应功能的英文单词或其缩写;[-options] 是选项,用于对命令进行控制,可省略;parameter1 … 是传给命令的参数,可以是…

CppCon 2016 学习:Parallelism in Modern C++

这段介绍的是 HPX (High Performance ParalleX)&#xff0c;一个现代C的通用并行运行时系统&#xff0c;重点包括&#xff1a; 通用性&#xff1a;适用于各种规模的应用&#xff0c;从小型到超大规模分布式系统。统一标准API&#xff1a;符合C标准&#xff0c;方便编写异步、并…

机器学习监督学习实战七:文本卷积神经网络TextCNN对中文短文本分类(15类)

本文介绍了一个基于TextCNN模型的文本分类项目&#xff0c;使用今日头条新闻数据集进行训练和评估。项目包括数据获取、预处理、模型训练、评估测试等环节。数据预处理涉及清洗文本、中文分词、去除停用词、构建词汇表和向量化等步骤。TextCNN模型通过卷积层和池化层提取文本特…

iot-dc3 项目Bug修复保姆喂奶级教程

一.Uncaught (in promise) ReferenceError: TinyArea is not defined 1.触发场景 前端设备模块,点击关联模板、关联位号、设备数据,无反应,一直切不过去,没有报错通知,F12查看控制台报错如下: 2.引起原因 前端导入的库为"@antv/g2": "^5.3.0",在 P…

Spring Boot + MyBatis Plus + SpringAI + Vue 毕设项目开发全解析(源码)

前言 前些天发现了一个巨牛的人工智能免费学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站 Spring Boot MyBatis Plus SpringAI Vue 毕设项目开发全解析 目录 一、项目概述与技术选型 项目背景与需求分析技术栈选择…

Vitess数据库部署与运维深度指南:构建可伸缩、高可用与安全的云原生数据库

摘要 Vitess是一个为MySQL和MariaDB设计的云原生、水平可伸缩的分布式数据库系统&#xff0c;它通过分片&#xff08;sharding&#xff09;实现无限扩展&#xff0c;同时保持对应用程序的透明性&#xff0c;使其无需感知底层数据分布。该项目于2019年从云原生计算基金会&#…

SpringAI+DeepSeek大模型应用开发——6基于MongDB持久化对话

持久化对话 默认情况下&#xff0c;聊天记忆存储在内存中ChatMemory chatMemory new InMemoryChatMemory()。 如果需要持久化存储&#xff0c;可以实现一个自定义的聊天记忆存储类&#xff0c;以便将聊天消息存储在你选择的任何持久化存储介质中。 MongoDB 文档型数据库&…

Mac电脑-音视频剪辑编辑-Final Cut Pro X(fcpx)

Final Cut Pro Mac是一款专业的视频剪辑工具&#xff0c;专为苹果用户设计。 它具备强大的视频剪辑、音轨、图形特效和调色功能&#xff0c;支持整片输出&#xff0c;提升创作效率。 经过Apple芯片优化&#xff0c;利用Metal引擎动力&#xff0c;可处理更复杂的项目&#xff…

不同程度多径效应影响下的无线通信网络电磁信号仿真数据生成程序

生成.mat数据&#xff1a; %创建时间&#xff1a;2025年6月19日 %zhouzhichao %遍历生成不同程度多径效应影响的无线通信网络拓扑推理数据用于测试close all clearsnr 40; n 30;dataset_n 100;for bias 0.1:0.1:0.9nodes_P ones(n,1);Sampling_M 3000;%获取一帧信号及对…

Eureka 和 Feign(二)

Eureka 和 Feign 是 Spring Cloud 微服务架构中协同工作的两个核心组件&#xff0c;它们的关系可以通过以下比喻和详解来说明&#xff1a; 关系核心&#xff1a;服务发现 → 动态调用 组件角色核心功能Eureka服务注册中心服务实例的"电话簿"Feign声明式HTTP客户端根…

Springboot仿抖音app开发之RabbitMQ 异步解耦(进阶)

Springboot仿抖音app开发之评论业务模块后端复盘及相关业务知识总结 Springboot仿抖音app开发之粉丝业务模块后端复盘及相关业务知识总结 Springboot仿抖音app开发之用短视频务模块后端复盘及相关业务知识总结 Springboot仿抖音app开发之用户业务模块后端复盘及相关业务知识…

1.部署KVM虚拟化平台

一.KVM原理简介 广义的KVM实际上包含两部分&#xff0c;一部分是基于Linux内核支持的KVM内核模块&#xff0c;另一部分就是经过简化和修改的Qemuo KVM内核模块是模拟处理器和内存以支持虚拟机的运行&#xff0c;Qemu主要处理丨℃以及为用户提供一个用户空间工具来进行虚拟机的…

优化与管理数据库连接池

优化与管理数据库连接池 在现代高并发系统中,数据库连接池是保障数据库访问性能的核心组件之一。合理配置、优化和管理连接池,可以有效缓解连接创建成本高、连接频繁断开重连等问题,从而提升系统整体的响应速度与稳定性。 数据库连接池的作用与价值 数据库连接池的核心思…

实现回显服务器(基于UDP)

目录 一.回显服务器的基本概念 二.回显服务器的简单示意图 三.实现回显服务器&#xff08;基于UDP&#xff09;必须要知道的API 1.DatagramSocket 2.DatagramPacket 3.InetSocketAddress 4.二者区别 1. 功能职责 2. 核心作用 3. 使用场景流程 四.实现服务器端的主…

LabVIEW电液伺服阀自动测试

针对航空航天及工业液压领域电液伺服阀测试需求&#xff0c;采用 LabVIEW 图形化编程平台&#xff0c;集成 NI、GE Druck 等品牌硬件&#xff0c;构建集静态特性&#xff08;流量/ 压力 / 泄漏&#xff09;与动态特性&#xff08;频率响应&#xff09;测试于一体的自动化系统&a…

性能优化 - 高级进阶: Spring Boot服务性能优化

文章目录 Pre引言&#xff1a;为何提前暴露指标与分析的重要性指标暴露与监控接入Prometheus 集成 性能剖析工具&#xff1a;火焰图与 async-profilerasync-profiler 下载与使用结合 Flame 图优化示例 HTTP 及 Web 层优化CDN 与静态资源加速Cache-Control/Expires 在 Nginx 中配…

力扣网C语言编程题:除自身以外数组的乘积

一. 简介 本文记录力扣网上涉及数组方面的编程题&#xff0c;主要以 C语言实现。 二. 力扣上C语言编程题&#xff1a;涉及数组 题目&#xff1a;除自身以外数组的乘积 给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i…

SpringBoot扩展——发送邮件!

发送邮件 在日常工作和生活中经常会用到电子邮件。例如&#xff0c;当注册一个新账户时&#xff0c;系统会自动给注册邮箱发送一封激活邮件&#xff0c;通过邮件找回密码&#xff0c;自动批量发送活动信息等。邮箱的使用基本包括这几步&#xff1a;先打开浏览器并登录邮箱&…

【html】iOS26 液态玻璃实现效果

<!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>液体玻璃效果演示</title><style>bo…