Tuesday, September 9, 2008

Arrays and ArrayLists

What is an Array?
Array is a group of similar data types so we can simply say Array's are homogeneous data structures. Array can store the elements in contiguous memory locations.We can access elements in array by index.
using array's
. we can easily store the data
. we can easily sort the data
. we can re size the array
Types of Array's:
. One dimensional array
int[] abc ;
int[] abc = new int[10];
. Multi dimensional array
int[,] abc;
int[,] abc = new int[2,3];
. Jagged array
arrays of arrays is called jagged arrays.
string[][] abc = new string[2][];

Disadvantage of an array's:
consider one array with 100 elements. suppose we want search an element of 99th it visit every element while searching so performance wise it is not good. To overcome arrays MS developed collections.
-------------------------------------------------------------------------------------------------
ArrayLists
ArrayList same as standard array. It supports dynamic array,which changes it's size as required. array can store only one type elements but ArrayList can store different types of object so ArrayLists are heterogeneous data structure. In ArrayList it re size allocation memory automatically when storing reach the array limits it double the size of an array. We can fix the size by assigning value to capacity parameter.

ArrayList can store collection of objects. It means it can store everything as a object. This is known as Boxing. In case of retrieving a value from this you need to cast the element of the object array to original type.This is known as unboxing.

Disadvantage:
sorting is not possible.

About C#

C# (pronounced C Sharp) is an object-oriented programming language developed by Microsoft as part of the .NET initiative and later approved as a standard by ECMA (ECMA-334) and ISO(ISO/IEC 23270). Anders Hejlsberg ,the designer of Delphi, leads development of the C# language, which has an object-oriented syntax based on C++ and includes influences from aspects of several other programming languages (most notably Delphi and Java) with a particular emphasis on simplification.
HISTORY:
During the development of .NET, the class libraries were originally written in a anguage/compiler called Simple Managed C (SMC). In January 1999, Anders Hejlsberg formed a team to build a new language at the time called Cool.By the time the .NET project was publicly announced at the July 2000 Professional Developers Conference(PDC), the language had been renamed C# and the class libraries and ASP.NET runtime had been ported to C#.
C#'s principal designer and lead architect at Microsoft is Anders Hejlsberg, who was previously involved with the design of Visual J++, Borland Delphi, and Turbo Pascal. In interviews and technical papers he has stated that flaws in most major programming languages (e.g. C++, Java, DelpHi, and Smalltalk) drove the fundamentals of the Common Language Runtime (CLR), which, in turn, drove the design of the C# programming language itself. Some argue that C# shares roots in other languages.