using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection.Emit;
using System.Text;
using System.Threading.Tasks;
namespace Wroxe
{
//吐个槽 自动化狗都不干。
//循环
//有四种循环方式 for / while /do...while/foreach 都是在满足某个条件之前重复执行代码块
//1.for 循环
//其迭代机制是在执行下一次迭代前,测试是否满足某个条件。如果清楚循环次数可以优先考虑for循环
//如果测试的循环条件为假,循环代码块就不会执行,一次也不会
class Program1
{
static void Fex1()
{
for (int i = 0; i < 100; i = i + 1)
{
Console.WriteLine(i);
}
//int i =0 指在执行第一次循环前要计算的表达式,通常做为循环计数器,要初始化
//i<100 指在每次迭代之前要测试表大师是否为真,才能执行下一次迭代
//i= i+1 每次迭代完要计算,递增循环计数器,也可以是递减
//for循环可以嵌套,在每次迭代外部循环时,内部循环都要彻底执行完毕
for (int i = 0; i < 100; i += 10)
{
for (int j = 0; j < i + 10; j++)
{
Console.WriteLine($"j");
}
Console.WriteLine();
}
}
static void Fex2()
{
//while也是一个预测试循环,语法与for类似,但是while只有一个表达式
bool condition = false;
while (condition)
{
Console.WriteLine(condition);
}
//while容易造成死循环,通常用于不知道循环次数的情况下
}
static void Fex3()
{
//while是先测试,那么do...while就是后测试版本,什么意思呢,就是它不管你条件是否满足,循环代码块至少要执行一次
bool condition = false;
do
{
Console.WriteLine('a');
} while (condition);
}
static void Fex4()
{
//foreach循环可以迭代集合中的每一项,例如数组,名称空间中的集合类,自己定义的集合类
int[] arrayofInts = [1, 2, 3, 4, 5];
foreach (int temp in arrayofInts)
{
Console.WriteLine(temp);
}
}
static void Fex5()
{
//跳转语句 goto/break/continue/return
//1.goto语句可以直接跳转到程序中用标签指定的零一行
goto Label;
Console.WriteLine("this won‘t be executed");
Label: Console.WriteLine("Continuing execution from here");
//它也有限制,不能跳转到代码块中,也不能跳出类的范围,不能退出try...catch快后面的finally
//2.break 在switch语句中用来退出case语句,也可以用来退出循环
//如果放在嵌套语句中,在执行最内部循环后面的语句
//3.continue 类似break,它只能退出当前迭代,然后开始执行循环的下一次迭代
//4.return 用于退出类的方法,把控制权返回给方法的调用者
}
static void Fex6()
{
}
}
class Program2
{
//名称空间
//它提供了一种组织相关类和其他类型的方式,可以在定义一个类,然后再其他文件中执行时,就可以再同一个名称空间包含,创建一个逻辑组合
//每个名称空间名都由它所在名称空间的名称组成,用句点分隔开,开头时最外层的,最后是它自己的短名
//不允许声明嵌套在另一个名称空间中的多部分名称空间
//using语句
//要在文件顶部列出类的名称空间,加上using关键字,就可以使用类名来调用名称空间中的类型
//using system;
//别名,using也可以给类和名称空间指定别名。如果名称非常长,可以指定一个别名代替名称空间
//using alias = NamespaceName;
//Main()方法,程序是从Main()开始执行
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i);
}
}
//注释就不说了
//XML文档,如果有时间还是学HTML吧,可惜前端凉透了,
//C#预处理器指令
//#defined #undef
//#defined 告诉编译器存在给定名称的符号,类似声明变量吧,但是并没有真正的值
//#defined DEBUG #undef与之相反
//#region #endregion 用于把一段代码是为有给定名称的一个块
#region Member
int x;
double y;
#endregion
//编程规则,少数服从多数,个人服从公司。不要到最后把自己坑了。
//Pascal大小写 camel大小写
//字段,属性,方法的使用要有用法约定
//C#语法与C++/Java相似,但是区别有一个强类型系统。强类型,弱类型知道吗?下次再说
}
}
C#基础-3
最新推荐文章于 2024-10-10 12:01:53 发布