C#基础到入门(一篇就够了)(一)

简介: C#基础到入门(一篇就够了)

C#


简介


C#是微软公司发布的一种由C和C++衍生出来的面向对象的编程语言,它不仅去掉了 C++ 和 Java 语言中的一些复杂特性,还提供了可视化工具,能够高效地编写程序。

C#是由C和C++衍生出来的一种安全的、稳定的、简单的、优雅的面向对象编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。

C#使得C++程序员可以高效的开发程序,且因可调用由 C/C++ 编写的本机原生函数,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。

C#关键字


image.png

image.png

image.png

image.png

🍺C#初次体验


⌨使用Visual Studio创建第一个项目 打印Hello world!


1.1 创建项目

打开VS->新键项目->找到控制台程序(.NET Framework)->下一步->创建

eg:

1.png

1.2 打印Hello world!


🔔如何编译当前程序?


1.C#程序–人能看懂,机器看不懂

2.执行程序的确是机器

3.需要将C#程序编译(翻译)成机器能够读懂的语言(二进制)

4.这样程序就可以被机器执行了

5.Windows:生成->生成解决方案 Ctrl + Shift + B


🔔如何运行当前程序?

1.Windows:运行而不调试(Ctrl + F5/F5)

eg:

2.png

🔔注释

1.注释是不会被编译的,更不会被执行

2.注释的作用:

3.解释说明当前的代码是什么含义

 3.1、强调

 1.在目前学习代码阶段,保证你写的每行代码都要配一行注释

 2.解释说明,你这句代码是什么含义

 3.1、暂时取消某些代码的执行

 快捷键:

  注释当前选中行的代码:Ctrl + K + C

  取消注释当前选中行的代码:Ctrl + K + U

🍺MSDN


MSDN地址


https://docs.microsoft.com/zh-cn/dotnet/api/system.reflection.fieldinfo?view=netframework-4.7.2

🍺数据类型


⌨数据的量级


  • 1024字节(byte)=1KB
  • 1024KB = 1MB
  • 1024MB = 1GB
  • 1024GB = 1TB
  • 1024TB = 1PB

⌨数据类型


bool 0000 0000 false 0000 0001 true

sbyte 有符号的8位整数 000 0000 — 111 1111 (0-127)

 1.第一位表示符号(+ -)

 2.特殊0:1000 0000 和 0000 0000

 3.硬性规定:1000 0000 表示-128

 4.取值范围:-128—+127

byte无符号的8位整数

 1.0000 0000 —— 1111 1111

 2.取值范围 0 ——255

short有符号的16位整数(文档中是Int16)

 1.000 0000 0000 0000 —— 111 1111 1111 1111

 2.负32768到正32767

int有符号的32位整数(文档中是Int32)

最常用的整数类型

一般说整型即int类型

无特殊情况,存储一个整数都用int

int占4个字节(面试经常问)

long有符号的64位整数(文档中是Int64)

浮点数(通常理解就是生活中的小数)

float(单精度浮点数)【文档中查:Single】

一般情况下,float足够

double(双精度浮点数)【文档中查:Double】

如果需要精度更高一点,用Double

decimal(高精度浮点数)

极少用到,天文数字可能会用到这个

⌨常量、变量


程序运行期间

程序开始到程序结束

变量:在程序运行期间,可以被改变

变量的声明

数据类型 变量名 = 初值;

⌨ int a = 10;

变量可以不赋初值(在特殊情况下必须要赋初值)

不赋初值时,当前变量的值是默认值

int/float 默认值是0

char 默认值’\0’(表示空字符)

常量:在程序运行期间,不能被改变

常量的声明

const 数据类型 变量名 = 初值;

大写(潜规则)

⌨ const float money = 100.35f;

常数必须要赋初值

浮点型声明时注意:

float flo = 1.11f;【float数字后面要加f】

double damage = 1.11d【double后面要加d】

decimal damage = 1.223m【decimal后面要加m】

字符型声明注意:

字符类型(一定要用单引号括起来)

char cha = ‘name’;

常量及变量的命名规则

只能由字母、数字、@和下划线(_)这些组成

数字不能开头,⌨ 1a❌、3f❌、xiaoming1✅

@符号,要么不用,要用必须放在首位,🌰@zhansan✅,zhang@san❌

不能与系统的关键词同名,⌨ int,long,sbyte❌

变量名不能重复

中文变量名语法上是可以的,但极为不推荐

常量及变量的命名规范

全是英文单词,不要用拼音

驼峰命名法

大驼峰(每个单词的首字母大写,其余字母小写)

MyHeroDamage、HeroAttack

小驼峰:(第一个单词首字母不大写,后面每个单词的首字母大写,其余字母小写)

myHeroDamage、heroAttack【目前阶段都用小驼峰】

见名知意

yyds(你晓得这是啥?评论区见)❌

🍺运算符


⌨数据的量级


  • 赋值运算符 “=”,是一个运算,将后面的结果赋给前面的变量或常量
  • 前面 = 后面;后面的值赋给前面
  • 前面必须是个变量【不能是具体是数值(2,3,’A‘,“123”)】
  • 后面可以是具体的数值,也可以是变量,也可以是常量

算术运算符


+、- 加减法

*、/ 乘除法

a / b 运算之后得到一个结果

被除数 ÷ 除数 = 商

除法有一个禁忌:除数不能为0

% 取余(做除法取余数)

5 % 3 : 5除以3,得到的余数,是结果

上面的+、-、*、/、%都是二元运算符

++运算符和–运算符

举例:a++; 等价于 a = a+1;

++、- -是一元运算符

//int showYouAge = age++;//结果是18//意味着 age++ 得到的结果是 age//解析://第一步:将age的值赋给showYouAge//第二步:age自增intshowYouAge=++age;
//意味着 ++age 得到的结果是 age+1//解析://第一步:age自增//第二步:将age的值赋给showYouAge//总结://age++;++age;//++符号在前就先自增,后赋值//++符号在后就先赋值,后自增

练习题:

3.png

⌨符合运算符


  • a+=b;等价于a=a+b;
  • a=a+4; ==> a+=4;
  • a-=b;等价于a=a-b;
  • a*=b;等价于a=a*b;
  • a/=b;等价于a=a/b;
  • a%=b;等价于a=a%b;

⌨输入与输出


输出

Console.WriteLine();

输出内容,并换行

Console.Write();

输出内容,不换行

输入

Console.Read();

从屏幕读取一个字符,并返回该字符所对应的整型数字

Console.ReadLine();

从屏幕读取一串字符,并返回该字符串

字符串是一个数据类型

关键词string

表示一串字符

用双引号括起来

字符串相加可以得到两个字符串组合到一起的字符串

📚预编译执行 region

作用:代码分成一个区域,方便折叠和展开

区域首部:#region

区域尾部:#endregion

eg:

image.png

⌨类型转换


  • 隐式转换
  • 将占用字节小的、取值范围小的、精度小的,转换为占用字节大的、取值范围大的、精度高
  • 不需要任何的修饰符,会自动转换
//整型//1     2     4   8//sbyte short int longsbyteenglishScore=100;
//sbyte --> intintmyScore=englishScore;
//int --> longlongclassScore=myScore;
//int --> floatfloatnewScore=myScore;
//float --> doubledoublenewClassScore=newScore;
  • 显式转换(强制转换)
  • 将占用字节大的、取值范围大的、精度高,转换为占用字节小的、取值范围小的、精度小的
  • 需要强制转修饰符,会有精度的缺失,甚至数据的错误
  • 转换情况:知道这个数字,在小的数据类型的取值范围内
//强制转换intdamage=10000;
//int --> sbytesbytehealth= (sbyte)damage;
//输出结果Console.WriteLine(health); //16floatmathScore=90.5f;
//float --> intintmyAllScore= (int)mathScore;
//会把小数点后面的内容全部舍去Console.WriteLine(myAllScore); //90
  • int和char之间的类型转换
//int 和 char之间的类型转换intnum=11101;
//int --> charcharletter= (char)num;
//a-97Console.WriteLine(letter);

4.png

评论区请教大神!!!

image.png

int和bool之间的类型转换

不能进行转换

string与其他类型之间的转换

举例:

“false”,“true”“10”,“3.14“A”

转换方法

System.ConvertSystem.Convert.ToBoolean()
System.Convert.ToInt32()
System.Convert.ToSingle()
System.Convert.ToDouble()
System.Convert.ToChar()

数据类型.Parse()

int.Parse()
bool.Parse()
float.Parse()
char.Parse()

其他类型能不能转换成字符串

其他类型的变量.ToString();

⌨关系运算符 & 逻辑运算符


关系运算符:>,<,>=,<=,==,!=

逻辑运算符:逻辑运算是bool与bool之间的运算

&:与运算

true&true : truetrue&false : falsefalse&false : false

总结:一假则假

|:或运算

true|true : truetrue|false : truefalse|false : false

总结:一真则真

!:非运算

!true : false!false : true

&&:短路与运算

普通的&与运算,无论第一个条件是真是假,都会继续判断第二条件

短路与运算&&,如果判断第一个条件已经是假,则不会继续判断第二个条件

||:短路或运算

普通的|与运算,无论第一个条件是真是假,都会继续判断第二条件

短路或运算||,如果判断第一个条件已经是真,则不会继续判断第二个条件

短路&&、||

优点:第一个条件已经得知整个逻辑运算的结果,就不会去判断第二个条件了

节约了运算量

缺点:如果判断中带有运算,如果不进行第二个条件的判断,那第二个条件中的运算也不能执行

练习:👍👍👍👍👍👍


手动计算下列表达式的值和number的值,并编写程序来验证结果是否正确

①number初值为6:number++ * ++number - number-- / --number

②number初值为5:number++ > 3 | --number == 0

③number初值为2:number-- > 2 && --number == 0

④number初值为12:number++ > 10 && --number != 2 && number-- == 0 && ++number != 3

⑤number初值为0:number++ > -1 || --number <= 2 && number-- != 10

⑥number初值为0:number++ < -1 || (–number >= 2 && number-- != 10)【小括号优先级最高】


相关文章
|
2天前
|
存储 编译器 数据处理
C#基础入门之数据类型
C#基础入门之数据类型
|
2天前
|
开发框架 IDE .NET
c#入门必看
c#入门必看
11 0
|
2天前
|
IDE 程序员 C#
C#编程入门:从零开始的旅程
【4月更文挑战第20天】本文引导初学者入门C#编程,从环境搭建开始,推荐使用Visual Studio Community版作为IDE。接着,通过编写&quot;Hello, World!&quot;程序,介绍基本语法,包括数据类型、运算符和表达式。文章还涉及控制结构、函数和方法,以及面向对象编程概念。通过学习,读者将对C#有初步了解,并激发进一步探索编程世界的兴趣。
|
2天前
|
开发框架 .NET 程序员
C#/.NET该如何自学入门?
C#/.NET该如何自学入门?
|
2天前
|
定位技术 C# 图形学
Unity和C#游戏编程入门:创建迷宫小球游戏示例
Unity和C#游戏编程入门:创建迷宫小球游戏示例
80 2
|
2天前
|
C#
C# 继承、多态性、抽象和接口详解:从入门到精通
在 C# 中,可以将字段和方法从一个类继承到另一个类。我们将“继承概念”分为两类: 派生类(子类) - 从另一个类继承的类 基类(父类) - 被继承的类 要从一个类继承,使用 : 符号。 在以下示例中,Car 类(子类)继承了 Vehicle 类(父类)的字段和方法:
37 2
|
2天前
|
C#
C# 布尔值和条件语句:入门指南和实用示例
在编程中,通常需要一个只能有两个值之一的数据类型,比如: 是 / 否 开 / 关 真 / 假 为此,C# 有一个 bool 数据类型,可以取 true 或 false 的值。
74 3
|
2天前
|
存储 C#
C#入门开发(Hello World,运算符)
C#入门开发(Hello World,运算符)
30 0
|
2天前
|
Java 程序员 C#
C# 介绍、应用领域、入门、语法、输出和注释详解
C#(发音为“C-Sharp”)是一种由 Microsoft 创建的面向对象的编程语言,运行在 .NET Framework 上。源于 C 家族,与流行的语言如 C++ 和 Java 相近。首个版本发布于 2002 年,而最新版本,C# 12,于 2023 年 11 月发布
69 0
|
5月前
|
数据采集 JSON JavaScript
C# 解析“JSON“格式数据和网络实战案例 入门
C# 解析“JSON“格式数据和网络实战案例 入门