Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
In C# ist das Drucken einer Liste eine gängige Aufgabe, die auf verschiedene Weise erledigt werden kann und Flexibilität und Anpassungsmöglichkeiten bietet. Listen sind grundlegende Datenstrukturen in C#, und die Möglichkeit, ihren Inhalt auszudrucken, ist für das Debugging, die Protokollierung oder die Anzeige von Informationen für Benutzer entscheidend.
In diesem Artikel werden wir verschiedene Methoden untersuchen, um drucken einer Liste in C#.
In C# wird eine liste ist ein dynamisches Array, das wachsen oder schrumpfen kann. Es ist Teil des Namespace "System.Collections.Generic" und bietet Flexibilität und Effizienz bei der Handhabung von Sammlungen von Elementen. Der folgende Code erstellt eine einfache Nummernliste:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
}
}
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
Die traditionelle und einfache Art, die Elemente einer Liste zu drucken, ist die Verwendung einer "Foreach"-Schleife. Hier ist ein einfaches Beispiel:
using System;
using System.Collections.Generic;
class Program
{
public static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
Console.WriteLine("Printing list using foreach loop:");
foreach (var number in numbers)
{
Console.WriteLine(number);
}
}
}
using System;
using System.Collections.Generic;
class Program
{
public static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
Console.WriteLine("Printing list using foreach loop:");
foreach (var number in numbers)
{
Console.WriteLine(number);
}
}
}
Imports System
Imports System.Collections.Generic
Friend Class Program
Public Shared Sub Main()
Dim numbers As New List(Of Integer) From {1, 2, 3, 4, 5}
Console.WriteLine("Printing list using foreach loop:")
For Each number In numbers
Console.WriteLine(number)
Next number
End Sub
End Class
Diese Methode ist prägnant und gut lesbar, so dass sie für die meisten Szenarien geeignet ist.
Wenn Sie mehr Kontrolle über den Index benötigen oder Elemente bedingt ausgeben wollen, können Sie eine "for"-Schleife verwenden. Hier ist ein Beispiel für eine String-Liste:
using System;
using System.Collections.Generic;
class Program
{
public static void Main()
{
// create list of strongly typed objects
List<string> colors = new List<string> { "Red", "Green", "Blue", "Yellow" };
Console.WriteLine("Printing list using for loop:");
for (int index = 0; index < colors.Count; index++)
{
Console.WriteLine($"Color at index {index}: {colors[index]}");
}
}
}
using System;
using System.Collections.Generic;
class Program
{
public static void Main()
{
// create list of strongly typed objects
List<string> colors = new List<string> { "Red", "Green", "Blue", "Yellow" };
Console.WriteLine("Printing list using for loop:");
for (int index = 0; index < colors.Count; index++)
{
Console.WriteLine($"Color at index {index}: {colors[index]}");
}
}
}
Imports System
Imports System.Collections.Generic
Friend Class Program
Public Shared Sub Main()
' create list of strongly typed objects
Dim colors As New List(Of String) From {"Red", "Green", "Blue", "Yellow"}
Console.WriteLine("Printing list using for loop:")
For index As Integer = 0 To colors.Count - 1
Console.WriteLine($"Color at index {index}: {colors(index)}")
Next index
End Sub
End Class
Dieser Ansatz ist vorteilhaft, wenn Sie Zugriff auf den Index benötigen oder eine bestimmte Logik beim Drucken anwenden möchten.
Das Drucken einer Liste in umgekehrter Reihenfolge kann mit der Methode Reverse
erreicht werden. Diese Methode kehrt die Reihenfolge der Elemente in der Liste um, so dass Sie sie anschließend durchgehen und ausdrucken können.
Sie können zum Beispiel die Liste in umgekehrter Reihenfolge ausdrucken, indem Sie die Methode Reverse
verwenden und dann jedes Element ausdrucken.
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
numbers.Reverse();
foreach (var number in numbers)
{
Console.WriteLine(number);
}
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
numbers.Reverse();
foreach (var number in numbers)
{
Console.WriteLine(number);
}
Dim numbers As New List(Of Integer) From {1, 2, 3, 4, 5}
numbers.Reverse()
For Each number In numbers
Console.WriteLine(number)
Next number
Sie können auch die sortieren nach absteigend methode mit einem Schlüssel, um eine bestimmte Sammlung von Elementen aus der generischen LINQ-Klasse anzuordnen:
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
var reversedNumbers = numbers.OrderByDescending(n => n);
foreach (var number in reversedNumbers)
{
Console.WriteLine(number);
}
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
var reversedNumbers = numbers.OrderByDescending(n => n);
foreach (var number in reversedNumbers)
{
Console.WriteLine(number);
}
Dim numbers As New List(Of Integer) From {1, 2, 3, 4, 5}
Dim reversedNumbers = numbers.OrderByDescending(Function(n) n)
For Each number In reversedNumbers
Console.WriteLine(number)
Next number
Das Zählen der Anzahl der Elemente in einer Liste ist eine gängige Operation. Zu diesem Zweck kann die Eigenschaft Count
oder die Methode Count
verwendet werden. Sobald Sie die Zählung haben, können Sie sie einfach ausdrucken.
List<string> names = new List<string> { "Alice", "Bob", "Charlie" };
int count = names.Count;
Console.WriteLine($"Number of elements: {count}");
List<string> names = new List<string> { "Alice", "Bob", "Charlie" };
int count = names.Count;
Console.WriteLine($"Number of elements: {count}");
Dim names As New List(Of String) From {"Alice", "Bob", "Charlie"}
Dim count As Integer = names.Count
Console.WriteLine($"Number of elements: {count}")
List<string> names = new List<string> { "Alice", "Bob", "Charlie" };
int count = names.Count();
Console.WriteLine($"Number of elements: {count}");
List<string> names = new List<string> { "Alice", "Bob", "Charlie" };
int count = names.Count();
Console.WriteLine($"Number of elements: {count}");
Dim names As New List(Of String) From {"Alice", "Bob", "Charlie"}
Dim count As Integer = names.Count()
Console.WriteLine($"Number of elements: {count}")
Das Drucken von Elementen an einem bestimmten Index erfordert den Zugriff auf die Liste an diesem Index. Auf diese Weise können Sie auf Elemente an verschiedenen Orten zugreifen und sicherstellen, dass Sie potenzielle Indexüberschreitungen bewältigen können:
List<double> prices = new List<double> { 19.99, 29.99, 39.99 };
int indexToPrint = 1;
if (indexToPrint >= 0 && indexToPrint < prices.Count)
{
Console.WriteLine($"Element at index {indexToPrint}: {prices[indexToPrint]}");
}
else
{
Console.WriteLine("Index out of range.");
}
List<double> prices = new List<double> { 19.99, 29.99, 39.99 };
int indexToPrint = 1;
if (indexToPrint >= 0 && indexToPrint < prices.Count)
{
Console.WriteLine($"Element at index {indexToPrint}: {prices[indexToPrint]}");
}
else
{
Console.WriteLine("Index out of range.");
}
Dim prices As New List(Of Double) From {19.99, 29.99, 39.99}
Dim indexToPrint As Integer = 1
If indexToPrint >= 0 AndAlso indexToPrint < prices.Count Then
Console.WriteLine($"Element at index {indexToPrint}: {prices(indexToPrint)}")
Else
Console.WriteLine("Index out of range.")
End If
Diese Beispiele bieten eine Grundlage für das Drucken von Listenelementen in verschiedenen Szenarien. Es gibt weitere nützliche Methoden, die die liste klasse bietet, die beim Drucken verwendet werden können.
Einige nützliche Methoden sind:
toArray:` Das ToArray() methode kopiert die Liste in ein neues var-Array.
Jetzt können Sie den Ansatz wählen, der Ihren Anforderungen am besten entspricht und die Lesbarkeit und Effizienz Ihres C#-Codes verbessert.
Die string.Join methode bietet eine prägnante Möglichkeit, die Elemente einer Liste zu einer einzigen Zeichenkette mit einem bestimmten Trennzeichen zu verketten. Dies kann für die Erstellung einer formatierten String-Darstellung der Liste nützlich sein.
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
string result = string.Join(", ", numbers);
Console.WriteLine(result);
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
string result = string.Join(", ", numbers);
Console.WriteLine(result);
Dim numbers As New List(Of Integer) From {1, 2, 3, 4, 5}
Dim result As String = String.Join(", ", numbers)
Console.WriteLine(result)
Hier werden die Elemente der Liste Zahlen
durch ein Komma und ein Leerzeichen getrennt zu einer Zeichenkette zusammengefügt, was zu einer formatierten Ausgabe führt. Die Sortiermethode kann auch vor dem Drucken der Listenelemente verwendet werden.
Für komplexere Szenarien, in denen Sie Elemente vor dem Druck filtern, umwandeln oder formatieren möchten, bietet die sprachintegrierte Abfrage (lINQ) kann von Vorteil sein.
using System.Linq;
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
List<int> evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
Console.WriteLine("Even numbers: " + string.Join(", ", evenNumbers));
using System.Linq;
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
List<int> evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
Console.WriteLine("Even numbers: " + string.Join(", ", evenNumbers));
Imports System.Linq
Private numbers As New List(Of Integer) From {1, 2, 3, 4, 5}
Private evenNumbers As List(Of Integer) = numbers.Where(Function(n) n Mod 2 = 0).ToList()
Console.WriteLine("Even numbers: " & String.Join(", ", evenNumbers))
In diesem Beispiel wird LINQ verwendet, um gerade Zahlen aus der ursprünglichen Liste herauszufiltern. Die `Where()methode wird mit einem Lambda-Ausdruck angewendet, und die "ToList()methode wird verwendet, um das Ergebnis wieder in eine Liste zu konvertieren.
Wenn Sie eine Liste von benutzerdefinierten Objekten haben, ist es empfehlenswert, die Methode "ToString" in Ihrer Objektklasse zu überschreiben, um eine sinnvolle Darstellung zu erhalten. Das folgende Beispiel zeigt, wie es geht:
class Person
{
public string Name { get; set; }
public int Age { get; set; }
public override string ToString()
{
return $"{Name}, {Age} years old";
}
}
class Program
{
public static void Main()
{
List<Person> people = new List<Person>
{
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 25 }
};
foreach (Person person in people)
{
Console.WriteLine(person);
}
}
}
class Person
{
public string Name { get; set; }
public int Age { get; set; }
public override string ToString()
{
return $"{Name}, {Age} years old";
}
}
class Program
{
public static void Main()
{
List<Person> people = new List<Person>
{
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 25 }
};
foreach (Person person in people)
{
Console.WriteLine(person);
}
}
}
Friend Class Person
Public Property Name() As String
Public Property Age() As Integer
Public Overrides Function ToString() As String
Return $"{Name}, {Age} years old"
End Function
End Class
Friend Class Program
Public Shared Sub Main()
Dim people As New List(Of Person) From {
New Person With {
.Name = "Alice",
.Age = 30
},
New Person With {
.Name = "Bob",
.Age = 25
}
}
For Each person As Person In people
Console.WriteLine(person)
Next person
End Sub
End Class
Durch Überschreiben von `ToString()methode in der Klasse "Person" steuern Sie, wie Instanzen der Klasse als Zeichenketten dargestellt werden. Dadurch wird die Lesbarkeit der Liste beim Ausdrucken verbessert.
IronPrint zeichnet sich als leistungsstarke und einsatzbereite Druckbibliothek aus, bei der Genauigkeit, Benutzerfreundlichkeit und Geschwindigkeit im Vordergrund stehen. Die plattformübergreifende Unterstützung und die Kompatibilität mit verschiedenen Dokumentenformaten machen es zu einem wertvollen Werkzeug für .NET-Entwickler, die effiziente Drucklösungen für ihre Anwendungen suchen.
Hier sind einige wichtige Schlüsselfunktionen, die IronPrint für den Druck physischer Dokumente in C#-Anwendungen auszeichnen:
Installieren Sie die IronPrint bibliothek mit der NuGet Package Manager Console:
Install-Package IronPrint
Install-Package IronPrint
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPrint
Alternativ können Sie es auch mit Visual Studio in Ihrem Projekt installieren. Klicken Sie mit der rechten Maustaste auf das Projekt im Projektmappen-Explorer und klicken Sie auf NuGet Package Manager für Lösungen verwalten. Suchen Sie auf der Registerkarte NuGet browse nach "ironprint", wählen Sie die neueste Version des IronPrint-Pakets aus den Suchergebnissen aus und klicken Sie dann auf die Schaltfläche Installieren, um es zu Ihrem Projekt hinzuzufügen.
IronPrint bietet den geräuschlosen Druck von Dokumenten über die einfache methode Print
. Wenn der physische Drucker nicht verfügbar ist, wird der vom Betriebssystem festgelegte Standarddrucker verwendet.
using IronPrint;
// Print the document
Printer.Print("newDoc.pdf");
using IronPrint;
// Print the document
Printer.Print("newDoc.pdf");
Imports IronPrint
' Print the document
Printer.Print("newDoc.pdf")
Es bietet auch eine spezielle Methode zur Anzeige der drucken"-Dialog für eine bessere Kontrolle beim Drucken. Die Methode ShowPrintDialogAsync
kann auch zum asynchronen Drucken verwendet werden.
using IronPrint;
// Show print dialog
Printer.ShowPrintDialog("newDoc.pdf");
using IronPrint;
// Show print dialog
Printer.ShowPrintDialog("newDoc.pdf");
Imports IronPrint
' Show print dialog
Printer.ShowPrintDialog("newDoc.pdf")
IronPrint bietet verschiedene drucken"-Einstellungen die eine granulare Kontrolle über das Druckdokument ermöglichen.
using IronPrint;
// Configure print settings
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the document
Printer.Print("newDoc.pdf", printSettings);
using IronPrint;
// Configure print settings
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the document
Printer.Print("newDoc.pdf", printSettings);
Imports IronPrint
' Configure print settings
Private printSettings As New PrintSettings()
printSettings.Dpi = 150
printSettings.NumberOfCopies = 2
printSettings.PaperOrientation = PaperOrientation.Portrait
' Print the document
Printer.Print("newDoc.pdf", printSettings)
Für ein besseres Verständnis der verwendeten Klassen und Methoden besuchen Sie bitte die API-Referenz seite.
Das Drucken einer Liste in C# erfordert die Wahl der richtigen Methode je nach Komplexität der Daten und der gewünschten Ausgabe. Ob mit einer einfachen Schleife, String.Join()
, LINQ, oder die Anpassung der `ToString()methode für benutzerdefinierte Objekte. Wenn Sie diese Ansätze verstehen, können Sie den Inhalt von Listen in Ihren C#-Anwendungen effektiv anzeigen. Experimentieren Sie mit diesen Techniken und wählen Sie diejenige aus, die für Ihren speziellen Anwendungsfall am besten geeignet ist.
IronPrint ist die ideale Druckbibliothek, wenn Sie Genauigkeit, Benutzerfreundlichkeit und Geschwindigkeit wünschen. Egal, ob Sie WebApps entwickeln, mit MAUI, Avalonia oder anderen .NET-Produkten arbeiten, IronPrint unterstützt Sie dabei. Ausführlichere Informationen über IronPrint finden Sie hier dokumentation seite.
IronPrint ist eine kostenpflichtige Bibliothek, aber eine kostenloser Test. Laden Sie die Bibliothek herunter von hier und probieren Sie es aus!
9 .NET API-Produkte für Ihre Bürodokumente