Witam,
Mam problem gdyż przydało by mi się abym mógł połączyć dwie listy z dwóch oddzielnych klas. Czy jest to możliwe. Dodam że obie listy zawierają te same dane ( ten sam typ danych przechowują)
Jest to mozliwe.
Moze byc napisal:
- Co chcesz z tym zrobic?
- Czy lista ma byc tymczasowa?
- Jaki masz dostep do obiektow klas, ktorych listy chcesz laczyc?
Bo chyba "dodac elementy obu listy do listy trzeciej" nie jest satysfakcjonujace?
chce zrobić z tych dwóch jedną, a dostęp mam public tylko tak jak mówię są w różnych klasach
http://ideone.com/dT7ZQC
Jedyne co musisz dodac to pobranie z klasy tej listy.
Pytanie czy dane mają być unikalne ???
np w jednej masz 1 4 5 a w drugiej 2 3 4 i wynikowa ma być 12345 ???
Powiedz dokładnie co chcesz to pomożemy
Jena lista to 1,2,3,4
druga to a,b,c,d,e,f
gdzie a,b,c jest przypisane do 1
d,e do 2
f do 3
mefyuu napisał(a):
Witam,
Mam problem gdyż przydało by mi się abym mógł połączyć dwie listy z dwóch oddzielnych klas. Czy jest to możliwe. Dodam że obie listy zawierają te same dane ( ten sam typ danych przechowują)
List<int> first = new List<int>(new[] {1,2,3});
List<int> second = new List<int>(new[] {2,2,4});
List<int> concat = first.Concat(second).ToList(); // 1,2,3,2,2,4
List<int> uninon = first.Union(second).ToList(); // 1,2,3,4
Jena lista to 1,2,3,4
druga to a,b,c,d,e,f
W takim przypadku trzeba przerobić listy na ten sam typ danych na przykład:
List<int> first = new List<int>(new[] {1,2,3});
List<string> second = new List<string>(new[] {"a", "b", "c"});
List<string> toString = first.Select(i=>i.ToString()).Concat(second).ToList();
List<object> toObject = first.Cast<object>().Concat(second.Cast<object>()).ToList();
No ale ogólnie unikałbym takiego łączenia list, bo jest "nienaturalne" i zapewne masz gdzieś błąd w rozumowaniu.
user 1000000 napisał(a):
Jena lista to 1,2,3,4
druga to a,b,c,d,e,f
gdzie a,b,c jest przypisane do 1
d,e do 2
f do 3
Z czegoś takiego, to ja bym zrobił Dictionary<int, List<char>>
, ale pewno nie o to Ci chodzi. Opisz problem dokładniej. Jaka jest struktura tych danych, i jaka jest zasada ich łączenia?
List<int> first = new List<int>(new[] {1,2,3});
List<int> first = {1,2,3};
:)
List<int> first = {1,2,3};
:)
Can only use array initializer expressions to assign to array types. Try using a new expression instead.</quote>
int[] a = {1, 2, 3};
IList<int> b = new[] { 1, 2, 3 };
List<int> c = new[]{1,2,3}.ToList();
List<int> d = new List<int>(new[]{1,2,3});