PC Review


Reply
Thread Tools Rating: Thread Rating: 1 votes, 1.00 average.

Find sub-list from a generic list

 
 
Curious
Guest
Posts: n/a
 
      11th Mar 2010
Given a generic list of items, when each item has some attributes such
as name, age, etc.

How to get a sublist of the items filtered by an attribute, (say age =
40)?

I can only think of looping through each item on the list, and check
to see if its age is 40. Is there more efficient way(s) to do this?
 
Reply With Quote
 
 
 
 
Mr. Arnold
Guest
Posts: n/a
 
      11th Mar 2010
Curious wrote:
> Given a generic list of items, when each item has some attributes such
> as name, age, etc.
>
> How to get a sublist of the items filtered by an attribute, (say age =
> 40)?
>
> I can only think of looping through each item on the list, and check
> to see if its age is 40. Is there more efficient way(s) to do this?


It's called LINQ.

var thelist = (from a in list.where(a => a.age == 40)select a).tolist();

http://en.wikipedia.org/wiki/Language_Integrated_Query
 
Reply With Quote
 
 
 
 
gerry
Guest
Posts: n/a
 
      11th Mar 2010
that's a pretty convoluted mixing of metaphors , to put it much simpler :

var thelist = list.Where(a => a.age == 40);

or

var = from a in list where a.age==40 select a;


"Mr. Arnold" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Curious wrote:
>> Given a generic list of items, when each item has some attributes such
>> as name, age, etc.
>>
>> How to get a sublist of the items filtered by an attribute, (say age =
>> 40)?
>>
>> I can only think of looping through each item on the list, and check
>> to see if its age is 40. Is there more efficient way(s) to do this?

>
> It's called LINQ.
>
> var thelist = (from a in list.where(a => a.age == 40)select a).tolist();
>
> http://en.wikipedia.org/wiki/Language_Integrated_Query



 
Reply With Quote
 
Mr. Arnold
Guest
Posts: n/a
 
      12th Mar 2010
gerry wrote:
> that's a pretty convoluted mixing of metaphors , to put it much simpler :
>
> var thelist = list.Where(a => a.age == 40);
>
> or
>
> var = from a in list where a.age==40 select a;


I don't know what you're talking about. And I don't think you know what
you're talking about.

Do you know anything about this?

http://msdn.microsoft.com/en-us/library/bb397687.aspx

(var =) I don't think that's going to work anywhere but giving a compile
error.

var thelist = (from a in list.where(a => a.age == 40)select a)tolist();

var list = (from a in accounts1.OrderBy(b => b.Lastname).Where(c =>
c.Age == 40)).tolist();

Do you not see the power of the expression?

You should have been posting to the OP and not me.

The next time you get in someone's face with a bunch of nonsense you had
better be correct yourself.
 
Reply With Quote
 
gerry
Guest
Posts: n/a
 
      12th Mar 2010

"Mr. Arnold" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> gerry wrote:
>> that's a pretty convoluted mixing of metaphors , to put it much simpler :
>>
>> var thelist = list.Where(a => a.age == 40);
>>
>> or
>>
>> var = from a in list where a.age==40 select a;

>
> I don't know what you're talking about. And I don't think you know what
> you're talking about.


huh - other than the 'var =' typo - what's the problem ?

>
> Do you know anything about this?
>
> http://msdn.microsoft.com/en-us/library/bb397687.aspx
>


sure I use it all the time

> (var =) I don't think that's going to work anywhere but giving a compile
> error.


if we are going to get typographically picky here - did you try to compile
the original example you gave ? Even the new one added below here won't
compile as is.

>
> var thelist = (from a in list.where(a => a.age == 40)select a)tolist();
>
> var list = (from a in accounts1.OrderBy(b => b.Lastname).Where(c => c.Age
> == 40)).tolist();
>
> Do you not see the power of the expression?


Sure I do - I also see the unnecessary complexity, jumble and
innefficiency - do you ?
Personally I try not to mix linq query syntax with & lambda expressions
whenever possible - KISS.

In your original example : ( note the corrections - the original code would
not compile ! )
var thelist = (from a in list.Where(a => a.age == 40)select a).ToList();
the segment
(from a in list.Where(a => a.age == 40)select a
is functionally equivalent to both
from a in list where a.age == 40 select a
and
list.Where(a => a.age == 40)
Depending on the usage .Tolist() could be unnecessary, if for some reason
you really need it then
list.Where(a => a.age == 40).ToList()
will do it, by responding that either
var thelist = list.Where(a => a.age == 40);
or
var thelist = from a list where age == 40 select a;
are both simpler ( less convoluted ) than
var thelist = (from a in list.Where(a => a.age == 40)select a)ToList();
is just stating the obvious

similarly with the 2nd newly added example , either
var list = from a in accounts1 where a.Age == 40 orderby a.Lastname
select a;
or
var list = accounts1.Where(a => a.Age == 40).OrderBy(a => a.Lastname);
are both perferable to
var list = (from a in accounts1.OrderBy(b => b.Lastname).Where(c =>
c.Age == 40)).tolist();
both in readablilty and efficiency.


>
> You should have been posting to the OP and not me.
>


I was replying to the thread, not to you.

> The next time you get in someone's face with a bunch of nonsense you had
> better be correct yourself.


in whose face how and with what nonsense ?
as noted above - your examples were/are incorrect as well.

just out of curiosity - why did you change your original link from
http://en.wikipedia.org/wiki/Language_Integrated_Query to
http://msdn.microsoft.com/en-us/library/bb397687.aspx
and add the second linq example as if it was part of your original response
?



 
Reply With Quote
 
Mr. Arnold
Guest
Posts: n/a
 
      12th Mar 2010
gerry wrote:
> "Mr. Arnold" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...

ssion?
>
> Sure I do - I also see the unnecessary complexity, jumble and
> innefficiency - do you ?



> Personally I try not to mix linq query syntax with & lambda expressions
> whenever possible - KISS.


<yawn>

Opinions are a dime a dozen and everyone has an opinion including you.

You got out line with your smart mouth out the gate.

You should have posted to the OP and not me, as I could care less about
what's on your mind.

You need to stay out of my sight. Does anything else need to be said here?
 
Reply With Quote
 
gerry
Guest
Posts: n/a
 
      17th Mar 2010
lol - come back when you get out of your teens

"Mr. Arnold" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> gerry wrote:
>> "Mr. Arnold" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...

> ssion?
>>
>> Sure I do - I also see the unnecessary complexity, jumble and
>> innefficiency - do you ?

>
>
>> Personally I try not to mix linq query syntax with & lambda expressions
>> whenever possible - KISS.

>
> <yawn>
>
> Opinions are a dime a dozen and everyone has an opinion including you.
>
> You got out line with your smart mouth out the gate.
>
> You should have posted to the OP and not me, as I could care less about
> what's on your mind.
>
> You need to stay out of my sight. Does anything else need to be said here?



 
Reply With Quote
 
Mr. Arnold
Guest
Posts: n/a
 
      17th Mar 2010
gerry wrote:
> lol - come back when you get out of your teens
>


You get out of your baby years.

Why don't you stop trolling me boy? You are of no importance to me. So,
go play in heavy street traffic and get ran over.
 
Reply With Quote
 
gerry
Guest
Posts: n/a
 
      17th Mar 2010
I am truly sorry, obviously you have some issues.


"Mr. Arnold" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
> gerry wrote:
>> lol - come back when you get out of your teens
>>

>
> You get out of your baby years.
>
> Why don't you stop trolling me boy? You are of no importance to me. So, go
> play in heavy street traffic and get ran over.



 
Reply With Quote
 
Mr. Arnold
Guest
Posts: n/a
 
      17th Mar 2010
gerry wrote:
> I am truly sorry, obviously you have some issues.


Yeah, you are sorry that's for sure. And the issue is with you boy
running your mouth and getting in people's face with your take on things.

Who cares as to what you think? You are nobody.

Now, I am going <plank> you boy that's a soft logical <plonk>, because I
have to eyeball a *clown* like you.

<bye>

 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
System.Collections.Generic.List<int> myList = new System.Collections.Generic.List<int>(100); DR Microsoft C# .NET 2 9th Apr 2008 09:26 PM
System.Collections.Generic.List<int> myList = new System.Collections.Generic.List<int>(100); DR Microsoft Dot NET Framework 1 9th Apr 2008 08:45 PM
System.Collections.Generic.List<int> myList = new System.Collections.Generic.List<int>(100); DR Microsoft Dot NET 1 9th Apr 2008 08:29 PM
Copy Items from a Generic List into multiple Generic Lists Sam Shrefler Microsoft C# .NET 5 12th Oct 2007 06:27 PM
error C2955: 'Vector' : use of class generic requires generic argument list Herby Microsoft VC .NET 5 14th Mar 2006 04:55 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 05:38 PM.