在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
C# 中的 C# 排序列表类是键值对的集合,类似于字典,但具有按键自动排序的额外优势。 它是 System.Collections.Generic 命名空间的一部分,专为需要快速访问分类数据的场景而设计。 SortedList TKey, TValue 是您需要以特定顺序维护数据并按键高效访问元素时的理想选择。
在与分类列表在 PDF 生成任务方面,IronPdf 与本课完美集成,让您对 PDF 生成有更多控制。
公有类 SortedList 是数组和哈希表的混合体,它通过键来组织项目。 在内部,它使用排序数组来保持键值的顺序,这意味着虽然按键值查找很高效,但插入和删除操作可能比字典慢。
默认情况下,SortedList TKey, TValue 使用 IComparable 接口以升序对键进行排序,从而确保字符串键和其他类型实现默认的比较行为。 如果需要自定义排序,可以提供自定义比较器。
优点:
缺点:
要在 C# 中创建 SortedList,可以使用默认构造函数,如果需要自定义排序,也可以传入 IComparer。 SortedList 的默认初始容量为 16,但如果事先知道大致的大小,可以指定该容量以提高性能。
SortedList<int, string> sortedList = new SortedList<int, string>();
SortedList<int, string> sortedList = new SortedList<int, string>();
Dim sortedList As New SortedList(Of Integer, String)()
您可以使用 Add 方法将键值对添加到 SortedList 中,这将使项目按键排序。 在下面的代码示例中,SortedList 按照指定的键值排序,数据自动保持升序。
sortedList.Add(1, "Apple");
sortedList.Add(3, "Banana");
sortedList.Add(2, "Cherry");
sortedList.Add(1, "Apple");
sortedList.Add(3, "Banana");
sortedList.Add(2, "Cherry");
sortedList.Add(1, "Apple")
sortedList.Add(3, "Banana")
sortedList.Add(2, "Cherry")
使用键值访问 SortedList 中的元素。 您可以直接检索或修改与键相关联的任何指定值。
// Accessing a specific value by key
string value = sortedList[1]; // "Apple"
// Modifying a value
sortedList[1] = "Avocado";
// Accessing a specific value by key
string value = sortedList[1]; // "Apple"
// Modifying a value
sortedList[1] = "Avocado";
' Accessing a specific value by key
Dim value As String = sortedList(1) ' "Apple"
' Modifying a value
sortedList(1) = "Avocado"
您可以使用 Remove 方法使用指定键删除项目,或使用 RemoveAt 使用指定索引删除项目。 这两个选项都允许有控制地删除 SortedList 中的指定对象数据。
sortedList.Remove(3); // Removes key 3
sortedList.RemoveAt(0); // Removes item at a zero-based index 0
sortedList.Remove(3); // Removes key 3
sortedList.RemoveAt(0); // Removes item at a zero-based index 0
sortedList.Remove(3) ' Removes key 3
sortedList.RemoveAt(0) ' Removes item at a zero-based index 0
您可以使用 foreach 循环遍历 SortedList,该循环按排序顺序检索键和值。
foreach (KeyValuePair<int, string> kvp in sortedList)
{
Console.WriteLine($"Key: {kvp.Key}, Value: {kvp.Value}");
}
foreach (KeyValuePair<int, string> kvp in sortedList)
{
Console.WriteLine($"Key: {kvp.Key}, Value: {kvp.Value}");
}
For Each kvp As KeyValuePair(Of Integer, String) In sortedList
Console.WriteLine($"Key: {kvp.Key}, Value: {kvp.Value}")
Next kvp
示例 2:在更复杂的情况下使用 SortedList,例如显示排序的事务日志或排名分数。
最佳实践:
SortedList 与 List:与列表不同,SortedList 用于按键访问元素,并保持元素的排序顺序。
何时使用 SortedList:当您需要对数据进行排序并主要通过键值进行访问时,尤其是在读取繁重的情况下,请使用 SortedList。
IronPDF是一个功能强大的库,用于用 C# 生成和修改 PDF 文件。 它允许开发人员从各种来源创建 PDF,以编程方式添加内容,并自定义 PDF 布局。 在本节中,我们将使用 IronPDF 从 SortedList 数据中创建 PDF 报告。
要开始使用 IronPDF,请安装 IronPDF NuGet 软件包:
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
下面的示例演示了如何将 SortedList 中的数据导出到 PDF 表格中。
首先,设置您的 SortedList:
SortedList<int, string> sortedList = new SortedList<int, string>
{
{ 1, "Apple" },
{ 2, "Banana" },
{ 3, "Cherry" }
};
SortedList<int, string> sortedList = new SortedList<int, string>
{
{ 1, "Apple" },
{ 2, "Banana" },
{ 3, "Cherry" }
};
Dim sortedList As New SortedList(Of Integer, String) From {
{1, "Apple"},
{2, "Banana"},
{3, "Cherry"}
}
接下来,使用 IronPDF 将这些数据生成 PDF:
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = "<h1>Sorted List Data</h1><table border='1'><tr><th>Key</th><th>Value</th></tr>";
foreach (var kvp in sortedList)
{
html += $"<tr><td>{kvp.Key}</td><td>{kvp.Value}</td></tr>";
}
html += "</table>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("sortedList.pdf");
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = "<h1>Sorted List Data</h1><table border='1'><tr><th>Key</th><th>Value</th></tr>";
foreach (var kvp in sortedList)
{
html += $"<tr><td>{kvp.Key}</td><td>{kvp.Value}</td></tr>";
}
html += "</table>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("sortedList.pdf");
Dim renderer As New ChromePdfRenderer()
Dim html As String = "<h1>Sorted List Data</h1><table border='1'><tr><th>Key</th><th>Value</th></tr>"
For Each kvp In sortedList
html &= $"<tr><td>{kvp.Key}</td><td>{kvp.Value}</td></tr>"
Next kvp
html &= "</table>"
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("sortedList.pdf")
该代码从 SortedList 数据中创建 HTML 表格,并使用 IronPdf 将其转换为 PDF。
在本文中,我们探讨了 C# SortedList 类,这是一个管理排序的键值数据集合的强大工具。 SortedList 尤其适用于需要按键排序和高效访问的场景。 从创建、添加和删除元素到与IronPDF集成以导出 PDF,我们介绍了在实际应用中使用 SortedList 的实用步骤和最佳实践。
此外,我们还展示了IronPDF可以简化从 SortedList 中将指定值导出为 PDF 格式的任务,从而轻松创建专业、条理清晰的报告。 IronPdf 的多功能性(包括可定制的页眉、页脚和 CSS 样式)使其成为直接从 C# 应用程序生成 PDF 的绝佳选择。
如果您有兴趣试用 IronPDF,它提供了一个免费试用您可以在不做任何承诺的情况下探索其全部功能。 通过该试用版,您可以测试 PDF 生成、自定义选项以及与现有项目的集成,以确保满足他们的需求。 通过结合 SortedList 和 IronPDF,开发人员可以获得一个强大、高效的解决方案,用于在 C# 应用程序中管理和报告排序数据。