一、基本的.NET框架概念
.NET框架是一個(gè)由微軟開發(fā)的軟件開發(fā)平臺,它提供了一個(gè)運(yùn)行時(shí)環(huán)境(CLR - Common Language Runtime)和一套豐富的類庫(FCL - Framework Class Library)。CLR負(fù)責(zé)管理代碼的執(zhí)行,而FCL則提供了大量預(yù)先編寫好的代碼,供開發(fā)者使用。
例子:
想象一下.NET框架是一個(gè)大型的超市,CLR是超市的收銀系統(tǒng),確保每件商品(代碼)都能正確結(jié)算(執(zhí)行),而FCL就是超市里的商品貨架,上面擺滿了各種商品(類和方法)供你選擇。
使用.NET類庫
.NET類庫是一組預(yù)先構(gòu)建好的代碼集合,它們封裝了常見的功能,使得開發(fā)者不必從頭開始編寫所有代碼。
例子:
如果你需要進(jìn)行數(shù)學(xué)運(yùn)算,.NET類庫中有一個(gè)名為System.Math
的類,它包含了各種數(shù)學(xué)函數(shù),比如求平方根:
using System;
class Program
{
static void Main()
{
double result = Math.Sqrt(16);
Console.WriteLine("The square root of 16 is: " + result);
}
}
二、字符串操作
在.NET中,字符串操作是非常常見的任務(wù),涉及到對文本數(shù)據(jù)的各種處理,比如搜索、替換、分割等。字符串在.NET中是通過System.String
類來表示的,這個(gè)類提供了豐富的方法來進(jìn)行各種操作。
1. 創(chuàng)建和連接字符串
- 創(chuàng)建字符串:直接使用雙引號創(chuàng)建字符串。
- 連接字符串:可以使用
+
操作符或者String.Concat
方法來連接字符串。
string name = "張三";
string greeting = "你好, " + name + "!";
Console.WriteLine(greeting);
2. 字符串的基本操作
- 長度:使用
Length
屬性獲取字符串的長度。 - 訪問字符:使用索引訪問字符串中的單個(gè)字符。
string example = "Hello";
int length = example.Length;
char firstChar = example[0];
3. 查找和替換
- 查找子字符串:使用
IndexOf
方法查找子字符串在主字符串中的位置。 - 替換內(nèi)容:使用
Replace
方法替換字符串中的內(nèi)容。
string sentence = "我愛編程,編程使我快樂。";
int index = sentence.IndexOf("編程");
string newSentence = sentence.Replace("編程", "畫畫");
Console.WriteLine(newSentence);
4. 分割字符串
- 分割:使用
Split
方法根據(jù)指定的分隔符將字符串分割成多個(gè)部分。
string fruits = "蘋果,香蕉,橘子";
string[] fruitArray = fruits.Split(',');
foreach (string fruit in fruitArray)
{
Console.WriteLine(fruit);
}
5. 字符串的修改
字符串在.NET中是不可變的,意味著一旦創(chuàng)建,其內(nèi)容就不能改變。如果需要修改字符串,實(shí)際上是創(chuàng)建了一個(gè)新的字符串對象。
string original = "Hello";
string modified = original + " World";
Console.WriteLine(modified);
6. 格式化字符串
- 格式化:使用
String.Format
或插值字符串來格式化字符串。
int age = 30;
string formatted = String.Format("他的年齡是{0}歲。", age);
string interpolated = $"他的年齡是{age}歲。";
Console.WriteLine(formatted);
Console.WriteLine(interpolated);
以上就是.NET中進(jìn)行字符串操作的一些基本方法和例子,字符串操作是非常重要的一個(gè)知識點(diǎn),這里篇幅有限就不展開說了,下次專門開一篇講字符串操作,先挖個(gè)坑,哈哈哈。
三、集合框架
在.NET中,集合框架是一組用于存儲和管理數(shù)據(jù)的類和接口。這些集合類幫助我們組織數(shù)據(jù),使數(shù)據(jù)的添加、刪除、遍歷和搜索等操作更加方便和高效。它包括列表(List)、字典(Dictionary)、隊(duì)列(Queue)、棧(Stack)等。
List
List是一個(gè)動態(tài)數(shù)組,可以存儲任何類型的元素,并允許添加、刪除和訪問元素。
例子:
using System.Collections.Generic;
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
numbers.Add(6);
int lastNumber = numbers[numbers.Count - 1];
numbers.RemoveAt(2);
Dictionary
Dictionary就像是一個(gè)電話簿,你可以用一個(gè)鍵(比如人名)來查找對應(yīng)的值(比如電話號碼)。
例子:
Dictionary<string, int> phoneBook = new Dictionary<string, int>();
phoneBook.Add("張三", 1234567890);
int phoneNumber = phoneBook["張三"];
Console.WriteLine("張三的電話號碼是: " + phoneNumber);
3. HashSet(集)
HashSet<T>
是一種不允許重復(fù)元素的集合,它可以用來快速檢查某個(gè)元素是否存在。
HashSet<string> uniqueNames = new HashSet<string>();
uniqueNames.Add("張三");
uniqueNames.Add("張三");
Console.WriteLine(uniqueNames.Count);
4. Queue(隊(duì)列)
Queue<T>
是一種先進(jìn)先出(FIFO)的集合。元素從隊(duì)列的一端添加,并從另一端移除。
Queue<string> line = new Queue<string>();
line.Enqueue("張三");
line.Enqueue("李四");
Console.WriteLine(line.Dequeue());
Console.WriteLine(line.Dequeue());
5. Stack(棧)
Stack<T>
是一種后進(jìn)先出(LIFO)的集合。元素從棧頂添加,并從棧頂移除。
Stack<string> books = new Stack<string>();
books.Push("書籍1");
books.Push("書籍2");
Console.WriteLine(books.Pop());
Console.WriteLine(books.Pop());
以上就是.NET中常見的幾種集合類型的簡介和使用示例。通過這些集合類,你可以更有效地管理和操作數(shù)據(jù)集。
四、文件和流操作
文件操作是程序與文件系統(tǒng)交互的一種方式,流(Stream)是.NET中用于讀寫數(shù)據(jù)的抽象概念。在.NET中,文件操作主要涉及到讀取、寫入、創(chuàng)建和刪除文件等操作。這些操作通常通過System.IO
命名空間中的類來實(shí)現(xiàn),如File
、FileInfo
、Directory
、DirectoryInfo
等。
1. 寫入文件
使用File.WriteAllText
方法可以創(chuàng)建一個(gè)文件,并向其中寫入文本。如果文件已存在,這個(gè)方法會覆蓋原有內(nèi)容。
string filePath = "example.txt";
string content = "Hello, this is a test file.";
File.WriteAllText(filePath, content);
2. 讀取文件
使用File.ReadAllText
方法可以讀取文件的全部文本內(nèi)容。
string readContent = File.ReadAllText(filePath);
Console.WriteLine(readContent);
3. 追加文本到文件
使用File.AppendAllText
方法可以在文件的末尾追加文本,而不是覆蓋原有內(nèi)容。
string additionalContent = " Here is some more text.";
File.AppendAllText(filePath, additionalContent);
4. 檢查文件是否存在
使用File.Exists
方法可以檢查指定路徑的文件是否存在。
bool fileExists = File.Exists(filePath);
Console.WriteLine(fileExists ? "文件存在。" : "文件不存在。");
5. 刪除文件
使用File.Delete
方法可以刪除指定路徑的文件。
File.Delete(filePath);
6. 使用StreamReader和StreamWriter
對于更復(fù)雜的文件操作,如逐行讀取或?qū)懭氪罅繑?shù)據(jù),可以使用StreamReader
和StreamWriter
。
using (StreamWriter writer = new StreamWriter("example.txt"))
{
writer.WriteLine("第一行文本");
writer.WriteLine("第二行文本");
}
using (StreamReader reader = new StreamReader("example.txt"))
{
string line;
while ((line = reader.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
以上就是.NET中進(jìn)行文件操作的一些基本方法和示例。通過這些方法,你可以輕松地在.NET應(yīng)用程序中處理文件的讀寫任務(wù)。
流操作還包括二進(jìn)制流(BinaryReader/BinaryWriter)、網(wǎng)絡(luò)流(NetworkStream)等,用于不同類型的數(shù)據(jù)讀寫。
以上就是.NET框架的一些核心概念和操作。每個(gè)知識點(diǎn)都像是構(gòu)建軟件大廈的一塊磚,理解并熟練使用它們,你就能構(gòu)建出功能強(qiáng)大、結(jié)構(gòu)清晰的應(yīng)用程序。
轉(zhuǎn)自https://www.cnblogs.com/Jason54/p/18249266
該文章在 2025/5/17 9:50:46 編輯過