IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: porovnanie dvoch listov vo vb.net

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
3012
Člen
Avatar
3012:2.7.2018 22:51

Dobrý deň, chcel som sa opýtať, či vo VB existuje niaky spôsob ako zobrať dva listy a zisťiť či sú zhodné, alebo nie napr. takto:

if list1 = list2 then
console.writeline("zhodujú sa")
else
console.writeline("nezhodujú sa")
end If

tento formát samozrejme ňefunguje a ja bys som chcel vedieť či sa v listoch dajú porovnavať len piložky, alebo aj celé zoznamy.

Chcem to použiť pre porovnanie dvoch textových súborov, z ktorých som načítal dáta do listu, každý riadok ako jednu položku v ňom.

Za odpovede ďakujem.

 
Odpovědět
2.7.2018 22:51
Avatar
Odpovídá na 3012
Neaktivní uživatel:3.7.2018 8:13

Pochybuju, že by ve VB neexistovalo Equals(). Dokonce jsem našel i lekci s tím názvem, takže…
Mělo by to být nějak takhle

if list1.Equals(list2) then //…
Nahoru Odpovědět
3.7.2018 8:13
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Michal Žůrek - misaz:3.7.2018 10:55

Equals existuje, ale porovnává to instance, pokud bude mít 2 instance jinak naprosto stejných listů vrátí mu to False.

 
Nahoru Odpovědět
3.7.2018 10:55
Avatar
Michal Žůrek - misaz:3.7.2018 10:57

Nejjednodušší je to udělat pomocí LINQ metod Except a Any.

Dim firstNotSecond = list1.Except(list2).ToList()
Dim secondNotFirst = list2.Except(list1).ToList()

If Not firstNotSecond.Any() And Not secondNotFirst.Any() Then
        Console.WriteLine("zhodujú sa")
Else
        Console.WriteLine("nezhodujú sa")
End If

https://stackoverflow.com/…are-two-list

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
3.7.2018 10:57
Avatar
Odpovídá na Michal Žůrek - misaz
Neaktivní uživatel:3.7.2018 11:05

Tak jsem zas o něco chytřejší i já :-).

Nahoru Odpovědět
3.7.2018 11:05
Neaktivní uživatelský účet
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
krepsy3:3.7.2018 17:53

Ahoj, dobrým zvykem zde na ITnetworku je označit komentář, který ti vyřešil problém, jako řešení - uděláš to tou velkou fajfkou vedle komentáře :)

Nahoru Odpovědět
3.7.2018 17:53
Programátor je stroj k převodu kávy na kód.
Avatar
Odpovídá na krepsy3
Neaktivní uživatel:3.7.2018 18:01

Proč to píšeš jako odpověď na mně? :-)

Nahoru Odpovědět
3.7.2018 18:01
Neaktivní uživatelský účet
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
krepsy3:3.7.2018 19:44

Aha, sorry, to vypadalo, že jsi autor vlákna :D :D :D My bad

Nahoru Odpovědět
3.7.2018 19:44
Programátor je stroj k převodu kávy na kód.
Avatar
3012
Člen
Avatar
Odpovídá na krepsy3
3012:3.7.2018 21:33

Ahoj už som to urobil, len tak mimochodom robím to vždy, len až teraz som sa dostal na počítač. Ďakujem všetkým za pomoc, veľmy si ju cením.

 
Nahoru Odpovědět
3.7.2018 21:33
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na 3012
krepsy3:3.7.2018 22:21

To tě šlechtí :D Bývá dost příspěvků, kde to není udělaný, tak to radš připomínám :D ;)

Nahoru Odpovědět
3.7.2018 22:21
Programátor je stroj k převodu kávy na kód.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.