C#入门篇(一)

变量

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

折叠代码

第一步:#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 右移几位 右侧去掉几个数

相关推荐
小羊没烦恼!16 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
伞伞悦读17 小时前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
C语言小火车18 小时前
C/C++ 为什么需要编译器?
开发语言·c++
霍霍的袁18 小时前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
孙启超19 小时前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust
此生决int19 小时前
深入理解C++系列(20)——C++11(下)
开发语言·c++
CoderYanger20 小时前
A.每日一题:835. 图像重叠
java·开发语言·程序人生·leetcode·面试·职场和发展·学习方法
伞伞悦读21 小时前
【第37期】Python JSON 与配置详解:序列化、反序列化、嵌套结构和配置文件
开发语言·python·json
CCCCCCCCharlie21 小时前
Linux进程控制四大核心操作
linux·开发语言
Brilliantwxx1 天前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件