C#传智:变量基础(第二天)
Posted dzweather
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#传智:变量基础(第二天)相关的知识,希望对你有一定的参考价值。
一、注释符
不写注释是流氓,名字瞎起是扯蛋。
注释作用:解释与注销
命名:
以字母、_、@开头,里面只能有_与@特殊符,其它不得出现如%*&^等。
不能与关键字重复。区分大小写,Num与num不是同一变量。html不区别。
变量不得重复定义。
Camel (变量命名)首单词小写,后继单词首字母大写:highSchoolStudent
Pascal (类方法)每个单词首字母大写:HighSchoolStudent
二、三种注释
1.单选注释//
2.多行注释 /* 要注释的内容 */
3.文档注释 /// 解释类或方法
三、快捷键
Ctrl+Shift+F10自动添加Using
Ctrl+M 空格:快速对齐代码 插件CodeMaid
Ctrl+M,Ctrl+M折叠/展开当前 Ctrl+M,Ctrl+O/L折叠/展开全部
Ctrl+Z:撤销
Ctrl+S:保存(一定要经常保存!)
Ctrl+J:快速弹出智能提示
Home/End 回到本行的行首/行尾
Ctrl+Home/End 回到本页的页首/页尾
Shift+End、Shift+Home
Ctrl+K+C:注释所选代码
Ctrl+K+U:取消对所选代码的注释
F1:转到帮助文档
#Region 和#EndRegion 折叠冗余代码
按住Alt可以选择竖向方框,此时输入文字,则每行有同文字。 Table与Shift一样可以进退。
例如,连续多行变量同时输入Public,则在多行变量前按Alt选择后直接输入Public完成。
F9下断点 Ctrl+F9启用/停止断点 Ctrl+Shift+F9删除所有断点
F10逐过程 F11逐语句 Ctrl+F10运行到光标处
F5调试执行 Ctrl+F5直接执行(忽略断点) F4显示属性 F7打开代码
Shift表示整个项目。例如 Ctrl+S保存当前文档,Ctrl+Shift+S保存整个项目文件
Ctrl+F当前文档查找 Ctrl+Shift+F整个项目查找
Ctrl+Shift+V调出剪贴板选择其中的记录使用 双击单词选中一个单词 Ctrl+D同时复制与粘贴
Ctrl+-/+ 回到上一个/下一个光标处
插入片段两次Table,例Cw后两次Table,或prop两次tab,设置修改:工具->代码片段管理器->CSharp
窗口过小用自动换行查看CtrlE,W,不用拉滚动条看。 Ctrl+左右箭头一次一个单词
Shift+Enter 快速进入下一行。
四、变量
变量类型 变量名;
变量名=值;
int number;
number=100;
同类型可用逗号分开并列写出: int a,b,c=4,d;
1.整形
sbyte -128 到 127 8位带符号整数 System.SByte
byte 0 到 255 无符号的8位整数 System.Byte
short -32,768到32,767 有符号16位整数 System.Int16
ushort 0到65,535 无符号16位整数 System.UInt16
int -2,147,483,648到2,147,483,647 带符号的32位整数 System.Int32
uint 0到4,294,967,295 无符号的32位整数 System.UInt32
long -9,223,372,036,854,775,808到9,223,372,036,854,775,807 64位带符号整数 System.Int64
ulong 0到18,446,744,073,709,551,615 无符号64位整数 System.UInt64
nint 取决于(在运行时计算的)平台 带符号的32位或64位整数 System.IntPtr
nuint 取决于(在运行时计算的)平台 无符号的32位或64位整数 System.UIntPtr
2.浮点
float ±1.5x10^-45 至 ±3.4 x 10^38 大约6-9位数字 4个字节 System.Single
double ±5.0×10^−324到 ±1.7 × 10^308 大约15-17位数字 8个字节 System.Double
decimal ±1.0x10^-28 至 ±7.9228x10^28 28-29 位 16个字节 System.Decimal
decimal d=5.55m;
decimal d=5.55;//错误
3.字符与字符串
char gender = '男';//单引号。最多最少存储一个字符,不能为空
string a = "2313"; //双引号。零或多个字符,可为空
五、提示
绿色波浪线警告,可运行。红色波浪线错误,不可运行。
蓝色字体关键字,独属于C#; 绿色的关键字,属于.Net。
string b = "张三";
String c = "李四";//大写 绿色
异常:语法无错,但不合逻辑Bug.
六、赋值
= 将右端赋值给左端。==与!=是比较,结果为bool.
+ 加/连接。数值相加;(只要有一个是字符串)则连接作用。Console.WriteLine(5 + "5");//55
七、占位符
挖个坑,再填个坑。只能多填不能少填。
int n1 = 10, n2 = 20, n3 = 30;
Console.WriteLine("第一个0,第二个1,第三个2.", n1, n2, n3);//10,20,30
输出顺序:按挖坑顺序
Console.WriteLine("第一个0,第二个2,第三个1.", n1, n2, n3);//10,30,20
Console.WriteLine("第一个0,第二个2,第三个1.", n1, n2);//少填,出错
//不使用第三方的变量交换数值 差值法
int n1 = 10, n2 = 50;
n1 = n1 - n2;// n1: n1-n2 (关键->求出差值)
n2 = n1 + n2;// n2: (n1-n2)+n2=n1
n1 = n2 - n1;// n1: n1-(n1-n2)=n2
Console.WriteLine("0,1", n1, n2);
//不使用第三方的变量交换数值 和值法
int n1 = 10, n2 = 50;
n1 = n1 + n2;//求和 (关键->求出和值)
n2 = n1 - n2;//求出n1
n1 = n1 - n2;//求出n2
Console.WriteLine("0,1", n1, n2);
八、接收信息
string name=Console.ReadLine();//接收一行的数据,按回车结束
char gender=Console.ReadKey();//接收一个字符,按键即结束
九、转义符
定义:'\\'+特殊符号,组合成一个特殊意义的字符
\\n 换行。windows老版本控制台识别,但文本不认(用\\n\\r)。在Mac两者都认.
最新版2022net framework4.7时,两者都认,注意\\n\\r会当作两次换行。
\\t 输出一个tab,排版对齐
\\" 英文半角双引号
\\b Backspace退格键,删除\\b前一个字符.置于字符串的两端时不会起作用。
\\\\ 表示一个\\。字符串前面加@,则取消\\的转义作用。下面均正确,但第二句显示的是两个\\\\
string str = @"E:\\1\\2\\3\\4\\5\\6.txt";
string str = @"E:\\\\1\\\\2\\\\3\\\\4\\\\5\\\\6.txt";
string str = "E:\\\\1\\\\2\\\\3\\\\4\\\\5\\\\6.txt";
@还起到保留原格式输出:
Console.Writeline(@"今天天气好
真的是好!");//输出中也是换行的
char c='\\b';//尽管两个字符,但\\起转义作用不是字符,表示一个退格意思,故是正确的
char c='bb';//错误
十、算术运算符
+ 加法/连接
- 减
* 乘
/ 除以.参与数全为整数时,结果只能为整数(四舍五入)
% 求余
十一、类型转换
= 等号两端的类型必须一致,若不一致时:
隐式转换(自动转换,小范围转大范围)
byte-> short、ushort、int、uint、long、ulong、float、double、decimal、nint 或 nuint
sbyte-> short、int、long、float、double、decimal 或 nint。
short-> int、long、float、double、decimal 或 nint
ushort-> int、uint、long、ulong、float、double、decimal、nint 或 nuint
int-> long、float、double、decimal 或 nint
uint-> long、ulong、float、double、decimal 或 nuint
long-> float、double 或 decimal
ulong-> float、double 或 decimal
float-> double
nint-> long、float、double 或 decimal
nuint-> ulong、float、double 或 decimal
提升类型时注意。如int->double
int a = 10, b = 3;
double c = a / b;//3 右侧整型结果
double d = 1.0 * a / b;//3.3333 右侧先提升double,再隐匿除整数b
double e = 1.0 * (a / b);//3 右侧先结果3,再提升double,仍为3
Console.WriteLine("0:0.000", d);//占位符确定小数位置(四舍五入)
显式转换(强制转换,两者兼容,大转小)
(要转类型)被转类型;
double n1 = 303.6;
int n2 = (int)n1;//303,取整,不能四舍五入
1.类型兼容时,用显式或隐式转换。
2.类型不兼容时,用Convert进行转换。
注意:必须能转,面上过得去。
string s = "23422";
double d = Convert.ToDouble(s);
int n = Convert.ToInt32(s);
以上是关于C#传智:变量基础(第二天)的主要内容,如果未能解决你的问题,请参考以下文章