2016-04-12 18 views
4

hem benim kodunda aşağıdaki yöntemleri var ki? Bu tür yöntemlerden çok var. Her iki yöntemi bir şekilde tek bir şekilde birleştirmeyi dilerim. Bunu yapmak için iyi bir yol var mı?C# destek çoklu ve tek bir nesne işlemleri

Tek bir öğeyle bir liste oluşturabilir ve yalnızca parametre olarak listelenen ancak bana çirkin görünen yöntemleri destekleyebilirim.

Diğer insanlar bunu nasıl yapıyor?

+0

'un bulunduğu liste sınıfında uygulanan yöntemdir. Arabirimleri kullanma ve anonim nesneler yardımcı olabilir. Tam olarak ne yapmaya çalıştığınıza bağlı olarak – Hozikimaru

+0

params anahtar kelimesi işe yarayabilir. –

cevap

8

Sen params anahtar kelime ile yöntemlerinizi oluşturabilirsiniz: bir tane varsa veya daha iyi

AddItems(item); 
AddItems(item1, item2, ...); 
or 
AddItems(new Item[] { ... }); 
0

olursa olsun listemizi her zaman almaya:

public bool AddItems(params Item[] items) 
{ 
    ... 
} 

public bool RemoveItems(params Item[] items) 
{ 
    ... 
} 

Bu böyle bu yöntemleri çağırmak verir birçok öğe ve tek bir eğlence içinde işlemek.

4

Yaklaşımınız doğru. Bu, Add() ve AddRange()

+0

Belki bu örnek özellikle ayrılmalıdır, ancak MarkItem/s, Change alanları ve benzeri yöntemler gibi birçok başka şey var. –