Solved

C# Strongly typed list

Posted on 2009-05-19
4
584 Views
Last Modified: 2013-12-17
Can anybody tell me what a strongly typed list is.

I am using C#

Thanks
0
Comment
Question by:Mr_Shaw
  • 2
4 Comments
 
LVL 26

Assisted Solution

by:Shaun Kline
Shaun Kline earned 150 total points
ID: 24421001
A strongly typed list is a list where the items have a specific type. As an example, List<string> is a list of string items.
0
 
LVL 39

Accepted Solution

by:
abel earned 350 total points
ID: 24421104
I second the answer provided by Shaun_Kline.

In older .NET enumerators and lists that needed to grab every possible type (a list for string, integers, boats or holidayhomes)  the only option was to use the object datatype as the base type, as that's the guaranteed base type for every class. The problem with this approach is that you would need to cast the elements back and forth and you loose your type safety (which is where the compiler warns you when you try to use a string as if it is an integer, more generic, whenever you assign on object to one of the wrong type).

Since .NET 2.0 we have generics. The syntax takes a little of getting used to. But once you understand it, it will make a lot of coding a lot easier and, more importantly, a lot safer to write and maintain. Many errors will be caught early and IntelliSense can help you with using the correct methods.
0
 
LVL 39

Assisted Solution

by:abel
abel earned 350 total points
ID: 24421167
Initializing and using a list is a breeze. For instance, to compare old and new:

List<string> listOfStrings = new List<string>();
listOfString.Add("new string to add");     // IntelliSense will tell you what to add here
 
List<DateTime> listOfDates = new List<DateTime>();
listOfDates.Add(DateTime.Now);
 
listOfDates.Add("10-24-2008");    // strong typing: this will raise an error
 
// old way:
IList listOfSomething = new ArrayList();
listOfSomething.Add("some sttring");    // no IntelliSense help
listOfSomething.Add(DateTime.Now);      // no IntelliSense help
 
// error after running code "Cannot convert DateTime to string"
// will not be visible during write/compiletime
string someString = listOfSomething[1]; 

Open in new window

0
 

Author Closing Comment

by:Mr_Shaw
ID: 31582950
Thanks
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
Today, the web development industry is booming, and many people consider it to be their vocation. The question you may be asking yourself is – how do I become a web developer?
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

790 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question