diff --git a/C#进阶/C#进阶.sln b/C#进阶/C#进阶.sln
index 4530a4d..740d55f 100644
--- a/C#进阶/C#进阶.sln
+++ b/C#进阶/C#进阶.sln
@@ -13,6 +13,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lesson2_Stack", "Lesson2_St
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lesson2_Stack练习题", "Lesson2_Stack练习题\Lesson2_Stack练习题.csproj", "{BE917425-E4A8-4C51-89BE-8F6DD86A1C00}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lesson3_Queue", "Lesson3_Queue\Lesson3_Queue.csproj", "{E16850A5-9B2E-473D-B9FB-0694439290B9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lesson3_Queue练习题", "Lesson3_Queue练习题\Lesson3_Queue练习题.csproj", "{77AE0EA5-FD54-46A0-A708-A2B38ABEE26D}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -39,6 +43,14 @@ Global
{BE917425-E4A8-4C51-89BE-8F6DD86A1C00}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BE917425-E4A8-4C51-89BE-8F6DD86A1C00}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BE917425-E4A8-4C51-89BE-8F6DD86A1C00}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E16850A5-9B2E-473D-B9FB-0694439290B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E16850A5-9B2E-473D-B9FB-0694439290B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E16850A5-9B2E-473D-B9FB-0694439290B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E16850A5-9B2E-473D-B9FB-0694439290B9}.Release|Any CPU.Build.0 = Release|Any CPU
+ {77AE0EA5-FD54-46A0-A708-A2B38ABEE26D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {77AE0EA5-FD54-46A0-A708-A2B38ABEE26D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {77AE0EA5-FD54-46A0-A708-A2B38ABEE26D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {77AE0EA5-FD54-46A0-A708-A2B38ABEE26D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/C#进阶/Lesson3_Queue/Lesson3_Queue.csproj b/C#进阶/Lesson3_Queue/Lesson3_Queue.csproj
new file mode 100644
index 0000000..2150e37
--- /dev/null
+++ b/C#进阶/Lesson3_Queue/Lesson3_Queue.csproj
@@ -0,0 +1,10 @@
+
+
+
+ Exe
+ net8.0
+ enable
+ enable
+
+
+
diff --git a/C#进阶/Lesson3_Queue/Program.cs b/C#进阶/Lesson3_Queue/Program.cs
new file mode 100644
index 0000000..c0abd48
--- /dev/null
+++ b/C#进阶/Lesson3_Queue/Program.cs
@@ -0,0 +1,89 @@
+using System.Collections;
+
+namespace Lesson3_Queue
+{
+ class Test
+ {
+
+ }
+ internal class Program
+ {
+ static void Main(string[] args)
+ {
+ #region 知识点一 队列本质
+ //queue是C#为我们封装好的类
+ //本质是一个Object数组,只是封装了特殊的存储规则
+
+ //queue是队列存储容器,队列是一种先进先出的数据结构
+ //先存入的数据先取出,后存入的数据后取出
+ #endregion
+
+ #region 知识点二 声明
+ //需要引用命名空间system.collections
+ Queue queue = new Queue();
+ #endregion
+
+ #region 知识点三 增取查改
+
+ //增
+ queue.Enqueue(1);//入队
+ queue.Enqueue("123");
+ queue.Enqueue(1.4f);
+ queue.Enqueue(new Test());
+
+ //取
+ object v = queue.Dequeue();//出队,取出队列头部的元素
+ Console.WriteLine(v);
+ v = queue.Dequeue();
+ Console.WriteLine(v);
+
+ //查
+ //1.查看队列头部的元素
+ v = queue.Peek();
+ Console.WriteLine(v);
+ v = queue.Peek();
+ Console.WriteLine(v);
+ //2.查看元素是否存在于队列中
+ if(queue.Contains(1.4f))
+ {
+ Console.WriteLine("存在1.4f");
+ }
+
+ //改
+ //队列没有提供修改元素的方法
+ //只能通过出队和入队的方式来间接修改元素
+ queue.Clear();
+ queue.Enqueue(1);
+ queue.Enqueue(2);
+ queue.Enqueue(3);
+ #endregion
+
+ #region 知识点四 遍历
+ //1.长度
+ Console.WriteLine(queue.Count);
+ //2.遍历
+ foreach (object item in queue)
+ {
+ Console.WriteLine(item);
+ }
+ //3.转数组
+ object[] arr = queue.ToArray();
+ for(int i = 0; i < arr.Length; i++)
+ {
+ Console.WriteLine(arr[i]);
+ }
+ //4.循环出队
+ while(queue.Count > 0)
+ {
+ Console.WriteLine(queue.Dequeue());
+ }
+ #endregion
+
+ #region 知识点五
+ // 由于用万物之父来存储数据,自然存在装箱拆箱
+ // 当往其中进行值类型存储时就是在装箱
+ // 当将值类型对象取出来转换使用时,就存在拆箱
+ #endregion
+ }
+ }
+}
diff --git a/C#进阶/Lesson3_Queue练习题/Lesson3_Queue练习题.csproj b/C#进阶/Lesson3_Queue练习题/Lesson3_Queue练习题.csproj
new file mode 100644
index 0000000..2150e37
--- /dev/null
+++ b/C#进阶/Lesson3_Queue练习题/Lesson3_Queue练习题.csproj
@@ -0,0 +1,10 @@
+
+
+
+ Exe
+ net8.0
+ enable
+ enable
+
+
+
diff --git a/C#进阶/Lesson3_Queue练习题/Program.cs b/C#进阶/Lesson3_Queue练习题/Program.cs
new file mode 100644
index 0000000..5e80830
--- /dev/null
+++ b/C#进阶/Lesson3_Queue练习题/Program.cs
@@ -0,0 +1,22 @@
+using System.Collections;
+
+namespace Lesson3_Queue练习题
+{
+ internal class Program
+ {
+ static void Main(string[] args)
+ {
+ Queue q = new Queue();
+ for(int i = 0; i < 10; i++)
+ {
+ Console.WriteLine("请输入消息:");
+ q.Enqueue(Console.ReadLine());
+ }
+ for(int i = 0; i < 10; i++)
+ {
+ Thread.Sleep(1000);
+ Console.WriteLine(q.Dequeue());
+ }
+ }
+ }
+}