C#入门篇(一)

news2024/12/25 1:35:06

变量

顾名思义就是变化的容器,即可以用来存放各种不同类型数值的一个容器

折叠代码

第一步:#region

第二步:按tab键

14种数据类型

有符号的数据类型

sbyte:-128~127

short:-32768~32767

int:-21亿多~21亿多

long:-900多万兆~900多万兆

无符号的数据类型

byte:0~255

ushort:0~65535

uint:0~42亿多

ulong:0~18百万兆多

浮点型

float:保留7~8位有效数字,根据编译器和操作系统的不同,使用时后面需要加f

double:保留15~17位有效数字,根据编译器和操作系统的不同

decimal:保留27~28位有效数字,根据编译器和操作系统的不同,使用时后面需要加m

特殊类型

bool:true/false

char:字符,只能存储一个字符比如汉字,字母等

string:字符串,上不封顶,根据你内存空间决定

重点:C#情况下,char占2个字节 

变量的命名规范

不能重名

不能以数字开头

不能使用程序关键字命名

不能有特殊符号(下划线除外)

Main虽然是方法名,但是可以做变量名,print也是

常量

固定写法:const 变量类型 变量名=初始值;

特点:必须初始化,不能被修改,常量的声明就是在声明变量前面加一个const关键字 

应用:声明游戏中不会变化的变量的,如PI,重力加速度等这些

转义字符

单引号:\'

双引号:\"

斜杠:\\

换行:\n

制表符:\t

回退一个字符:\b

空字符(没有任何作用):\0

警报铃:\a

隐式转换

大范围可以装小范围

decimal无法用隐式转换的方式,去存储double和float

double -->float --> 整数(无符号、有符号)-> char

decimal --->整数(无符号、有符号)---> char

string和bool不参与隐式转换规则的

有符号可以装无符号,前提是无论无符号的数是多少,都得在有符号的范围内

显示转换

一括号强转方法

二Parse方法: 把字符串类型转换成对应类型,否则报错 语法:对应类型.Parse("")如int.Parse("12");

注意:我们填写字符串 必须是要能够转成对应类型的字符 如果不符合规则 会报错

值的范围 必须是能够被变量存储的值 否则报错

 

三Convert法:更准确的将各个类型之间进行相互转换 语法:Convert.To类型("")如Convert.ToInt32("12");

注意:精度比括号强转好一点,会四舍五入

int a=Convert.ToInt32("1.65f");结果a值为2

四ToString方法:其他类型转字符串 语法:变量.ToString()

异常捕获

try{}   catch(Exception e){}  finally{}

字符串拼接

string.Format("待拼接的内容",内容1,内容2,内容3...);

想要被拼接的内容使用占位符替代:{数字} 数字:0~n 依次往后

string str2=string.Format("{0}{1}{2}",1,true,false);结果为1TrueFalse

控制台三个打印语句

Console.WriteLine("你好,"+name);

Console.WriteLine("你好,{0}",name);

String str=string.Format("你好,{0}",name);

Console.WriteLine(str);

运算符优先级

非!大于与&&大于或||

位运算符

位与 &:连接两个数值进行位运算,将数值转为二进制,对位运算,有0则0

位或  |:连接两个数值进行位运算,将数值转为二进制,对位运算,有1则1

异或  ^:连接两个数值进行位运算,将数值转为二进制,对位运算,相同为0 不同为1

a 001

b 101

c 100

c=a^b 结果为100即4

位取反  ~:写在数值前面 将数值转为二进制 对位运算 0变1 1变0

取反加1  c结果为-6

左移右移:<< >>左移几位 右侧加几个0 右移几位 右侧去掉几个数

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

尝试OmniverseFarm的最基础操作

目标 尝试OmniverseFarm的最基础操作。本地机器作为Queue和Agent&#xff0c;同时在本地提交任务。 主要参考了官方文档&#xff1a; Farm Queue — Omniverse Farm latest documentation Farm Agent — Omniverse Farm latest documentation Farm Examples — Omniverse Far…

微机原理常考简答题总结

一&#xff0c;8086和8088这两个微处理器在结构上有什么异同&#xff1f; &#xff08;1&#xff09;共同点&#xff1a;内部均由EU、BIU组成&#xff0c;结构基本相同&#xff1b;寄存器等功能部件均为16位&#xff1b;内部数据通路为16位&#xff1b;指令系统相同。 &#x…

让测试人头疼的web自动化之验证码识别彻底解决方案

验证码识别解决方案 对于web应用程序来讲&#xff0c;处于安全性考虑&#xff0c;在登录的时候&#xff0c;都会设置验证码&#xff0c;验证码的类型种类繁多&#xff0c;有图片中辨别数字字母的&#xff0c;有点击图片中指定的文字的&#xff0c;也有算术计算结果的&#xff…

vsCode输出控制台中文乱码解决

在tasks.json里的args中添加 "-fexec-charsetGBK", // 处理mingw中文编码问题 "-finput-charsetUTF-8",// 处理mingw中文编码问题

现代操作系统复习笔记【核心考点知识+重点复习题】

文章目录 一、核心考点基础知识第一章 概述1、操作系统的基本概念、基本功能2、分时系统、批处理系统、实时系统的主要特征3、用户接口、系统调用过程4、单到与多道程序技术5、操作系统虚拟机体系结构6、CPU工作模式&#xff1b;7、部分课后习题 第二章 进程与线程1、进程的基本…

Tsmaster使用笔记整理

选择厂商 根据你所选择的CAN分析仪的厂商&#xff0c;确定你的厂商设备设置。 我一般会选择PEAK&#xff0c;和 ZLG多一点&#xff0c;其他的没有用过。除了上图中的&#xff0c;市面上的CAN分析仪还有CANanlyst、广成科技、创芯科技等&#xff0c;但它们都不能在Tsmaster上使…

如何利用 NFTScan Portfolio 功能分析钱包 NFT 持仓

随着 NFT 市场的扩大和投资者的增加&#xff0c;追踪和管理大量 NFT 资产正变得越来越复杂&#xff0c;无论是新手还是资深投资者&#xff0c;都需要借助实时的 NFT 数据作为判断依据。因此&#xff0c;一个能够全面分析 NFT 钱包持仓的工具就显得尤为重要。帮助投资者掌握自身…

Linux C/C++ 显示NIC流量统计信息

NIC流量统计信息是由操作系统维护的。当数据包通过NIC传输时&#xff0c;操作系统会更新相关的计数器。这些计数器记录了数据包的发送和接收数量、字节数等。通过读取这些计数器&#xff0c;我们可以获得关于网络流量的信息。 为什么需要这些信息? 可以使用这些信息来监控网络…

Linux的网络服务DHCP

一.了解DHCP服务 1.1 DHCP定义 DHCP&#xff08;动态主机配置协议&#xff09;是一个局域网的网络协议。指的是由服务器控制一段IP地址范围&#xff0c;客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下&#xff0c;DHCP作为Windows Server的一个服…

【Python】使用tkinter设计开发Windows桌面程序记事本(2)

上一篇&#xff1a;【Python】使用tkinter设计开发Windows桌面程序记事本&#xff08;1&#xff09;-CSDN博客 下一篇&#xff1a; 作者发炎 此代码模块是继承上一篇文章的代码模块的基础上开始设计开发的。 如果不知道怎么新建"记事本项目"文件夹&#xff0c;请参…

程序员试用期转正工作总结

一、试用期工作总结 在公司的三个月试用期中&#xff0c;我完成了以下工作&#xff1a; 完成了XX个功能模块的开发&#xff0c;包括XX模块、XX模块和XX模块。参与了XX个项目的开发和上线&#xff0c;其中XX项目、XX项目和XX项目是我主导的。优化了现有系统的性能&#xff0c;特…

跟着我学Python进阶篇:02.面向对象(上)

往期文章 跟着我学Python基础篇&#xff1a;01.初露端倪 跟着我学Python基础篇&#xff1a;02.数字与字符串编程 跟着我学Python基础篇&#xff1a;03.选择结构 跟着我学Python基础篇&#xff1a;04.循环 跟着我学Python基础篇&#xff1a;05.函数 跟着我学Python基础篇&#…

计算机体系结构----寄存器重命名/Tomasulo算法

前情提要 计分板算法可看我写的博文计算机体系结构----计分板&#xff08;scoreboard&#xff09;算法 Tomasulo算法的核心是寄存器重命名&#xff08;register renaming&#xff09;&#xff1b;通过寄存器重命名&#xff0c;可彻底消除WAR/WAW冲突&#xff0c;计分板算法中…

2024--Django平台开发-Django知识点(五)

day05 django知识点 今日概要&#xff1a; 中间件 【使用】【源码】cookie 【使用】【源码 - Django底层请求本质】session【使用】【源码 - 数据库请求周期中间件】 1.中间件 1.1 使用 编写类&#xff0c;在类型定义&#xff1a;process_request、process_view、process_…

C++重新认知:inline关键字

一、为什么要使用inline关键字 在C中.&#xff0c;为了解决频繁调用小函数造成大量消耗栈空间的问题&#xff0c;引进了inline关键字&#xff0c;inline修饰的函数为内敛函数&#xff08;频繁大量的使用栈空间会造成栈溢出&#xff09;。 在这段代码中&#xff0c;每次执行for…

RT-Thread:SPI万能驱动 SFUD 驱动Flash W25Q64,通过 STM32CubeMX 配置 STM32 SPI 驱动

关键词&#xff1a;SFUD,FLASH,W25Q64&#xff0c;W25Q128&#xff0c;STM32F407 说明&#xff1a;RT-Thread 系统 使用 SPI万能驱动 SFUD 驱动 Flash W25Q64&#xff0c;通过 STM32CubeMX 配置 STM32 SPI 驱动。 提示&#xff1a;SFUD添加后的存储位置 1.打开RT-Thread Sett…

【obj To 3DTiles 格式转换】 可以自定义经纬高、属性表等参数 (一)

目录 0 引言1 3DTiles数据2 objTo3DTiles2.1 工具的安装2.1.1 拓展&#xff1a;Node.js 和 npm 2.2 工具的使用2.2.1 输出成瓦片数据2.2.2 输出带有坐标参数的瓦片数据 3 查看3DTiles数据 &#x1f64b;‍♂️ 作者&#xff1a;海码007&#x1f4dc; 专栏&#xff1a;Cesiumfor…

强化学习9——免模型预测算法介绍(蒙特卡洛方法和时步差分方法)

对于大部分情况来说&#xff0c;环境是未知的&#xff0c;也就是说状态转移概率未知&#xff0c;对于这种情况的算法称为免模型预测算法。免模型算法与环境不断交互学习&#xff0c;但是需要大量的运算。 蒙特卡洛方法 蒙特卡罗方法通过重复随机抽选&#xff0c;之后运用统计…

条款21:必须返回对象时,别妄想返回其引用

考虑一个表示有理数的类&#xff0c;其中包含一个计算两个有理数相乘的函数: class Rational { public:Rational(int numerator 0, int denominator 1) :n{ numerator }, d{ denominator }{} private:int n, d; // 分子和分母friend const Rational& operator*(const R…

vue知识-03

购物车案例 要实现的功能&#xff1a; 1、计算商品总价格 2、全选框和取消全选框 3、商品数量的增加和减少 <body> <div id"app"><div class"row"><div class"col-md-6 col-md-offset-3"><h1 class"text-center…