Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

String.Join<T>-Methode: (String, IEnumerable<T>)

.NET Framework (current version)
 

Veröffentlicht: Oktober 2016

Verkettet die Member einer Auflistung und verwendet das angegebene Trennzeichen zwischen den einzelnen Membern.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

[ComVisibleAttribute(false)]
public static string Join<T>(
	string separator,
	IEnumerable<T> values
)

Parameter

separator
Type: System.String

Die als Trennzeichen zu verwendende Zeichenfolge. separator ist nur in der zurückgegebenen Zeichenfolge enthalten, wenn values mehr als ein Element enthält.

values
Type: System.Collections.Generic.IEnumerable<T>

Eine Auflistung, die die zu verkettenden Objekte enthält.

Rückgabewert

Type: System.String

Eine Zeichenfolge, die aus den Membern von values besteht, getrennt durch die separator-Zeichenfolge. Wenn values keine Mitglieder hat, gibt die Methode String.Empty zurück.

Typparameter

T

Der Typ der Member von values.

Exception Condition
ArgumentNullException

values ist null.

Wenn separator ist null, eine leere Zeichenfolge (String.Empty) wird stattdessen verwendet. Wenn alle Member des values ist null, eine leere Zeichenfolge wird stattdessen verwendet.

Join<T>(String, IEnumerable<T>)ist eine bequeme Methode, mit dem Sie verketten, jedes Mitglied einer IEnumerable<T> Auflistung ohne sie in Zeichenfolgen konvertieren. Die Zeichenfolgendarstellung für jedes Objekt in der IEnumerable<T> Auflistung wird durch Aufrufen des Objekts abgeleitet ToString Methode.

Diese Methode ist insbesondere nützlich sein, die Language-Integrated Query (LINQ)-Abfrageausdrücke. Der folgende Code definiert z. B. eine sehr einfache Animal Klasse enthält den Namen des Animal und die Reihenfolge, zu dem er gehört. Zudem definiert der Code eine List<T> -Objekt, das eine Anzahl von enthält Animal Objekte. Die Enumerable.Where<TSource> Erweiterungsmethode aufgerufen, um das Extrahieren der Animal -Objekte, deren Order Eigenschaft "Rodent" entspricht. Das Ergebnis wird zum Übergeben der Join<T>(String, IEnumerable<T>) Methode.

using System;
using System.Collections.Generic;
using System.Linq;

public class Animal
{
   public string Kind;
   public string Order;

   public Animal(string kind, string order)
   {
      this.Kind = kind;
      this.Order = order;
   }

   public override string ToString()
   {
      return this.Kind;
   }
}

public class Example
{
   public static void Main()
   {
      List<Animal> animals = new List<Animal>();
      animals.Add(new Animal("Squirrel", "Rodent"));
      animals.Add(new Animal("Gray Wolf", "Carnivora"));
      animals.Add(new Animal("Capybara", "Rodent"));
      string output = String.Join(" ", animals.Where( animal => 
                      (animal.Order == "Rodent")));
      Console.WriteLine(output);  
   }
}
// The example displays the following output:
//      Squirrel Capybara

Im folgenden Beispiel wird die Sieb des Eratosthenes-Algorithmus zum Berechnen von Primzahlen, die kleiner als oder gleich 100 sind. Weist das Ergebnis, das eine List<T> Objekt vom Typ Integer, übergibt sie dann an die Join<T>(String, IEnumerable<T>) Methode.

using System;
using System.Collections.Generic;

public class Example
{
   public static void Main()
   {
      int maxPrime = 100;
      List<int> primes = GetPrimes(maxPrime);
      Console.WriteLine("Primes less than {0}:", maxPrime);
      Console.WriteLine("   {0}", String.Join(" ", primes));
   }

   private static List<int> GetPrimes(int maxPrime)
   {
      Array values = Array.CreateInstance(typeof(int), 
                              new int[] { maxPrime - 1}, new int[] { 2 });
      // Use Sieve of Eratosthenes to determine prime numbers.
      for (int ctr = values.GetLowerBound(0); ctr <= (int) Math.Ceiling(Math.Sqrt(values.GetUpperBound(0))); ctr++)
      {

         if ((int) values.GetValue(ctr) == 1) continue;

         for (int multiplier = ctr; multiplier <=  maxPrime / 2; multiplier++)
            if (ctr * multiplier <= maxPrime)
               values.SetValue(1, ctr * multiplier);
      }      

      List<int> primes = new List<int>();
      for (int ctr = values.GetLowerBound(0); ctr <= values.GetUpperBound(0); ctr++)
         if ((int) values.GetValue(ctr) == 0) 
            primes.Add(ctr);
      return primes;
   }   
}
// The example displays the following output:
//    Primes less than 100:
//       2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 4.0
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 4.0
Windows Phone Silverlight
Verfügbar seit 7.1
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: