C# 'ın ilk sürümünden, bir yöntemle alınabilirse, bir yöntemin uzun bir parametreler listesini alabileceği So -Constreded çeşitli parametreler için bir dizi parametre dizisi vardı (bkz. Wikipedia'nın çeşitli işlevlere eklenmesi) Anahtar kelime params Başladı.
Duyuru
Holger Schwichtenberg, 53 ünlü uzmanla, danışmanlık ve eğitim ve yazılımın geliştirilmesinde çok sayıda orta boy ve büyük şirketi destekleyen uzmanlar ağının teknik direktörüdür. Çok sayıda ulusal ve uluslararası uzman konferansındaki görünümleri, 90'dan fazla uzman kitabı ve 1.500'den fazla uzman makalesi sayesinde Holger Schwichtenberg, Almanya'daki .NET ve Web teknikleri için en iyi uzmanlardan biridir.
Aşağıdaki kod, dizili çeşitli parametrenin önceki varyantını gösterir:
public void MethodeMitBeliebigVielenParametern_Alt(string text,
params int[] args)
{
CUI.H2(nameof(MethodeMitBeliebigVielenParametern_Alt));
CUI.Print(text + ": " + args.Length);
foreach (var item in args)
{
CUI.LI(item);
}
}
Örneğin, yöntem aşağıdaki gibi hatırlanabilir:
MethodeMitbeliebigVielenParametern_Alt("Anzahl Zahlen", 1, 2, 3);
MethodeMitbeliebigVielenParametern_Alt("Number of numbers",
1, 2, 3, 4);
C# 13.0'da yeni, çeşitli parametrelerdeki bir dizi yerine, jenerik mengen türlerini (sözde parametre koleksiyonları) kullanmak da mümkündür params Span<T>:
public void MethodeMitBeliebigVielenParametern_Neu(string text,
params Span<int> args)
{
CUI.H2(nameof(MethodeMitBeliebigVielenParametern_Neu));
CUI.Print(text + ": " + args.Length); // statt args.Length
foreach (var item in args)
{
CUI.LI(item);
}
}
Aynı şekilde, çağrı parametrelerin ankrajında olduğu gibi esnektir:
MethodeMitBeliebigVielenParametern_Neu("Anzahl Zahlen", 1, 2, 3);
MethodeMitBeliebigVielenParametern_Neu("Number of numbers",
1, 2, 3, 4);
Bu nedenle, bu tür genel miktarlar bir params C# 13.0'da izin verildi:
Tıpkı bir dizi parametrede bitmiş bir dizi sunabileceğiniz gibi, daha sonra parametrelere dağıtılır
MethodeMitBeliebigVielenParametern_Alt(
"Anzahl Zahlen - übergeben als Int-Array",
[1, 2, 3]);
Yukarıdaki yeni türlerden birini, yöntemin bir parametre koleksiyonu olması gerekiyorsa da sunabilirsiniz:
MethodeMitBeliebigVielenParametern_Neu(
"Anzahl Zahlen - übergeben als List<int>",
new List<int> { 1, 2, 3 });
VEYA
MethodeMitBeliebigVielenParametern_Neu(
"Anzahl Zahlen - übergeben als List<int>",
[1, 2, 3]);
Dikkat: Aşağıdaki sözdizimi çalışmıyor:
MethodeMitBeliebigVielenParametern_Neu(
"Anzahl Zahlen - übergeben als List<int>",
new List<int> [1, 2, 3 ]);
Orada bu mümkün değil new List<int> [1, 2, 3 ] Üç boyutlu bir dizi List<int> oluşturuldu.
(RME)
Duyuru

Holger Schwichtenberg, 53 ünlü uzmanla, danışmanlık ve eğitim ve yazılımın geliştirilmesinde çok sayıda orta boy ve büyük şirketi destekleyen uzmanlar ağının teknik direktörüdür. Çok sayıda ulusal ve uluslararası uzman konferansındaki görünümleri, 90'dan fazla uzman kitabı ve 1.500'den fazla uzman makalesi sayesinde Holger Schwichtenberg, Almanya'daki .NET ve Web teknikleri için en iyi uzmanlardan biridir.
Aşağıdaki kod, dizili çeşitli parametrenin önceki varyantını gösterir:
public void MethodeMitBeliebigVielenParametern_Alt(string text,
params int[] args)
{
CUI.H2(nameof(MethodeMitBeliebigVielenParametern_Alt));
CUI.Print(text + ": " + args.Length);
foreach (var item in args)
{
CUI.LI(item);
}
}
Örneğin, yöntem aşağıdaki gibi hatırlanabilir:
MethodeMitbeliebigVielenParametern_Alt("Anzahl Zahlen", 1, 2, 3);
MethodeMitbeliebigVielenParametern_Alt("Number of numbers",
1, 2, 3, 4);
C# 13.0'da yeni, çeşitli parametrelerdeki bir dizi yerine, jenerik mengen türlerini (sözde parametre koleksiyonları) kullanmak da mümkündür params Span<T>:
public void MethodeMitBeliebigVielenParametern_Neu(string text,
params Span<int> args)
{
CUI.H2(nameof(MethodeMitBeliebigVielenParametern_Neu));
CUI.Print(text + ": " + args.Length); // statt args.Length
foreach (var item in args)
{
CUI.LI(item);
}
}
Aynı şekilde, çağrı parametrelerin ankrajında olduğu gibi esnektir:
MethodeMitBeliebigVielenParametern_Neu("Anzahl Zahlen", 1, 2, 3);
MethodeMitBeliebigVielenParametern_Neu("Number of numbers",
1, 2, 3, 4);
Bu nedenle, bu tür genel miktarlar bir params C# 13.0'da izin verildi:
- Collections.Generic.IEnumerable<T>
- System.Collections.Generic.IReadOnlyCollection<T>
- Collections.Generic.IReadOnlyList<T>
- System.Collections.Generic.ICollection<T>
- Collections.Generic.IList<T>
- Tüm Sınıflar Collections.Generic.IEnumerable<T>alet
- Span<T>
- ReadOnlySpan<T>
Tıpkı bir dizi parametrede bitmiş bir dizi sunabileceğiniz gibi, daha sonra parametrelere dağıtılır
MethodeMitBeliebigVielenParametern_Alt(
"Anzahl Zahlen - übergeben als Int-Array",
[1, 2, 3]);
Yukarıdaki yeni türlerden birini, yöntemin bir parametre koleksiyonu olması gerekiyorsa da sunabilirsiniz:
MethodeMitBeliebigVielenParametern_Neu(
"Anzahl Zahlen - übergeben als List<int>",
new List<int> { 1, 2, 3 });
VEYA
MethodeMitBeliebigVielenParametern_Neu(
"Anzahl Zahlen - übergeben als List<int>",
[1, 2, 3]);
Dikkat: Aşağıdaki sözdizimi çalışmıyor:
MethodeMitBeliebigVielenParametern_Neu(
"Anzahl Zahlen - übergeben als List<int>",
new List<int> [1, 2, 3 ]);
Orada bu mümkün değil new List<int> [1, 2, 3 ] Üç boyutlu bir dizi List<int> oluşturuldu.
(RME)