Thread View: alt.pl.comp.lang.csharp
13 messages
13 total messages
Started by Michał
Tue, 22 Jun 2010 11:41
Struktura danych [laik]
Author: Michał
Date: Tue, 22 Jun 2010 11:41
Date: Tue, 22 Jun 2010 11:41
38 lines
1589 bytes
1589 bytes
Witam, Jestem bardzo początkujący w C# i mam taką prośbę o sugestie. Mam taka strukturę danych. Int Wiek String Imie String Nazwisko .. .. String Poczta Będę chciał sortować po wieku lub nazwisku. Prosił bym o pomoc jakiej struktury danych mam użyć i jak to zaimplementować. Wiem, że w C# są już metody do sorotiwania... ale na tym moja wiedza się kończy. Dane będę wczytywane z klawiatury lub pliku txt ale z tym to już sobie poradzę. Kwestia jak to strukturę danych mądrze zrobić i zaimplementować. -- Pozrawiam
Re: Struktura danych [laik]
Author: mk
Date: Tue, 22 Jun 2010 11:58
Date: Tue, 22 Jun 2010 11:58
36 lines
1935 bytes
1935 bytes
Michał wrote:
...
> Prosił bym o pomoc jakiej struktury danych mam użyć i jak to
> zaimplementować. Wiem, że w C# są już metody do sorotiwania... ale na tym
> moja wiedza się kończy.
>
> Dane będę wczytywane z klawiatury lub pliku txt ale z tym to już sobie
> poradzę.
>
> Kwestia jak to strukturę danych mądrze zrobić i zaimplementować.
>
Ja bym to raczej nazwał klasą niż strukturą. Np tak:
class Osoba
{
Int Wiek
String Imie
String Nazwisko
...
}
Następnie tworzysz objekty tej klasy i dodajesz to do listy (poczytaj w
necie o kolekcjach a w szczególności o "List").
W liście masz już metodę sort, którą możesz modyfikować wg uznania
(czyli wybierasz sobie po czym chcesz sortować)
...
Ha, akurat miałem otwarte w przeglądarce :)
http://www.developerfusion.com/code/5513/sorting-and-searching-using-c-lists/
Tam masz wszystko wyłożone na tacy.
MK
Re: Struktura danych [laik]
Author: Michał
Date: Tue, 22 Jun 2010 12:06
Date: Tue, 22 Jun 2010 12:06
10 lines
1277 bytes
1277 bytes
Użytkownik "mk" <mk@nospam.com> napisał w wiadomości news:4c20a551$0$19169$65785112@news.neostrada.pl... > > Ja bym to raczej nazwał klasą niż strukturą. Np tak: No coż, najpier uczyłem się Pascala..... Wielkie dzięki za pomoc!!!!
Re: Struktura danych [laik]
Author: Łukasz 'Maly' Ostrowski
Date: Tue, 22 Jun 2010 12:51
Date: Tue, 22 Jun 2010 12:51
38 lines
2013 bytes
2013 bytes
On Tue, 22 Jun 2010 13:58:05 +0200, mk wrote:
> Ja bym to raczej nazwał klasą niż strukturą. Np tak:
>
> class Osoba
> {
> Int Wiek
> String Imie
> String Nazwisko
> ...
> }
Uwaga kosmetyczna, 99.9% C#owców korzysta z aliasa string,
a z BCLowego String np w przypadku String.Format, String.Empty.
Wypadałoby zrobić propertiesy z tych pół, oraz upublicznić je,
bo nie ma żadnego pożytku z agregatu którego memberzy są prywatni.
I ogółnie nadać access modifier dla Osoba też by wypadało.
Hint: w edytorze Visual Studio - prop<tab><tab> ;-).
> Następnie tworzysz objekty tej klasy i dodajesz to do listy (poczytaj w
> necie o kolekcjach a w szczególności o "List").
>
> W liście masz już metodę sort, którą możesz modyfikować wg uznania
> (czyli wybierasz sobie po czym chcesz sortować)
Albo z LINQ z .NET FW 3.5+:
http://msdn.microsoft.com/en-us/library/bb308959.aspx
Przy czym łatwiej się operuje kolekcjami funkcyjnie,
tzn. za pomocą LINQ, niż imperatywnie pętlami czy
też List.Sort() + IComparer, moim zdaniem oczywiście.
--
Pozdrawiam,
Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: Struktura danych [laik]
Author: Łukasz 'Maly' Ostrowski
Date: Tue, 22 Jun 2010 12:52
Date: Tue, 22 Jun 2010 12:52
9 lines
1212 bytes
1212 bytes
On Tue, 22 Jun 2010 14:51:15 +0200, Łukasz 'Maly' Ostrowski wrote: > Uwaga kosmetyczna, 99.9% C#owców korzysta z aliasa string, > a z BCLowego String np w przypadku String.Format, String.Empty. To oczywiście też się tyczy Int32, Single, Double etc. -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: Struktura danych [laik]
Author: Karol Y
Date: Tue, 22 Jun 2010 17:45
Date: Tue, 22 Jun 2010 17:45
13 lines
1252 bytes
1252 bytes
> Uwaga kosmetyczna, 99.9% C#owców korzysta z aliasa string, > a z BCLowego String np w przypadku String.Format, String.Empty. Nie wiem czy dobrze zrozumiałem. 99.9% C#owców korzysta z aliasa "string" jak chce zapisać string imie; a z "String" jak chcą używać metod tej klasy? -- Mateusz Bogusz
Re: Struktura danych [laik]
Author: Łukasz 'Maly' Ostrowski
Date: Tue, 22 Jun 2010 19:46
Date: Tue, 22 Jun 2010 19:46
25 lines
1665 bytes
1665 bytes
On Tue, 22 Jun 2010 19:45:38 +0200, Karol Y wrote: >> Uwaga kosmetyczna, 99.9% C#owców korzysta z aliasa string, >> a z BCLowego String np w przypadku String.Format, String.Empty. > > Nie wiem czy dobrze zrozumiałem. > > 99.9% C#owców korzysta z aliasa "string" jak chce zapisać > > string imie; > > a z "String" jak chcą używać metod tej klasy? Ta, jeżeli chcą sie odwołać do statycznych memberów, tzn. ja formalnie używam zawsze string ;-). Na stackoverflow i na różnych takich miejscach mrugnął mi convention z String.Blah. W sumie bardziej miałem na myśli że CSowcy w 99% korzystaja ze string, a niektórzy ze String.Blah ;-). -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: Struktura danych [laik]
Author: Wiktor Zychla
Date: Tue, 22 Jun 2010 21:14
Date: Tue, 22 Jun 2010 21:14
24 lines
1820 bytes
1820 bytes
> Nie wiem czy dobrze zrozumiałem. po pierwsze, nie ma czegoś takiego jak String. jest System.String. to oznacza, że String s; nie skompiluje się samo z siebie bez using System; gdzieś wyżej. natomiast string s; skompiluje się zawsze, bo string to alias dla System.String, rozpoznawany extra przez kompilator C#. po drugie, nie spotkałem się nigdy z konwencją string dla metod instancji, String dla metod statycznych. to ma średni sens. pozdrawiam uprzejmie, Wiktor Zychla
Re: Struktura danych [laik]
Author: Łukasz 'Maly' Ostrowski
Date: Tue, 22 Jun 2010 22:08
Date: Tue, 22 Jun 2010 22:08
17 lines
1627 bytes
1627 bytes
On Tue, 22 Jun 2010 23:14:03 +0200, Wiktor Zychla wrote: > po drugie, nie spotkałem się nigdy z konwencją string dla metod instancji, > String dla metod statycznych. to ma średni sens. Nie string dla metod instancji, tylko w deklaracjach - string, a w callach do statyków/constów String. Na StackOverflow było pare takich dyskusji i było parę postów "semi-autorytatywnych" o takich praktykach, tylko dlatego to dodałem. Jednak tak jak dorzuciłem, też realnie nikt ze "znajomych" nie korzysta z System.String.Whatever(...) - tylko zawsze z c#owego aliasa string. -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: Struktura danych [laik]
Author: Wiktor Zychla
Date: Wed, 23 Jun 2010 07:16
Date: Wed, 23 Jun 2010 07:16
7 lines
1495 bytes
1495 bytes
> Na StackOverflow było pare takich dyskusji i było > parę postów "semi-autorytatywnych" o takich praktykach, masz może linki albo pamiętasz argumentację? Wiktor Zychla
Re: Struktura danych [laik]
Author: Łukasz 'Maly' Ostrowski
Date: Wed, 23 Jun 2010 07:44
Date: Wed, 23 Jun 2010 07:44
24 lines
1849 bytes
1849 bytes
On Wed, 23 Jun 2010 09:16:59 +0200, Wiktor Zychla wrote: >> Na StackOverflow było pare takich dyskusji i było >> parę postów "semi-autorytatywnych" o takich praktykach, > > masz może linki albo pamiętasz argumentację? http://stackoverflow.com/questions/215255/string-vs-string-in-c/459364#459364 linkuje z: http://tommycode.blogspot.com/2009/01/string-versus-string-in-c.html referuje: http://www.idesign.net coding standard http://stackoverflow.com/questions/116523/string-vs-string/116544#116544 Jednak odpowiedzi na najistotniejsze pytanie nie ma, dlaczego tak a nie string.Whatever. Może któś lubi podświetlanie teal'em jako identyfikatorów typów a nie blue jako keywordów ;-). -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: Struktura danych [laik]
Author: Wiktor Zychla
Date: Wed, 23 Jun 2010 10:23
Date: Wed, 23 Jun 2010 10:23
10 lines
1805 bytes
1805 bytes
> Może któś lubi podświetlanie teal'em jako identyfikatorów typów > a nie blue jako keywordów ;-). równie dobrze może chodzić o jakiś rodzaj bata na klepaczy kodu, którzy nieuważnie będą studiować standard kodowania i za to będzie można obciąć im premie :) a poważnie - nie widzę żadnego rozsądnego uzasadnienia. Wiktor Zychla
Re: Struktura danych [laik]
Author: Łukasz 'Maly' Ostrowski
Date: Wed, 23 Jun 2010 10:39
Date: Wed, 23 Jun 2010 10:39
11 lines
1603 bytes
1603 bytes
On Wed, 23 Jun 2010 12:23:14 +0200, Wiktor Zychla wrote: > równie dobrze może chodzić o jakiś rodzaj bata na klepaczy kodu, którzy > nieuważnie będą studiować standard kodowania i za to będzie można obciąć im > premie :) > a poważnie - nie widzę żadnego rozsądnego uzasadnienia. Ja również, wręcz przeciwnie, trzeba wciśnąć dodatkowo Shift :). -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads