Both sides previous revisionPrevious revisionNext revision | Previous revision |
collections [2018/02/04 18:40] – wolfgangriedmann | collections [2018/02/05 05:20] (current) – wolfgangriedmann |
---|
* [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1|System.Collections.Generic.List<T>]] | * [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1|System.Collections.Generic.List<T>]] |
* [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.dictionary-2|System.Collections.Generic.Dictionary<TKey,TValue>]] | * [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.dictionary-2|System.Collections.Generic.Dictionary<TKey,TValue>]] |
| * [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.sortedlist|System.Collections.SortedList]] |
* [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.arraylist|System.Collections.ArrayList]] | * [[https://docs.microsoft.com/en-us/dotnet/api/system.collections.arraylist|System.Collections.ArrayList]] |
| |
* [[https://docs.microsoft.com/en-us/dotnet/standard/collections/selecting-a-collection-class|MSDN: Selecting a collection class]] | * [[https://docs.microsoft.com/en-us/dotnet/standard/collections/selecting-a-collection-class|MSDN: Selecting a collection class]] |
* [[https://docs.microsoft.com/en-us/dotnet/standard/collections/commonly-used-collection-types|MSDN: Commonly used collection types]] | * [[https://docs.microsoft.com/en-us/dotnet/standard/collections/commonly-used-collection-types|MSDN: Commonly used collection types]] |
| |
| There are a few very important things you should know about collections: |
| * They are not arrays, and therefore they are **0-based**, so the first member of the collection is **element 0**, and there is no compiler switch that can change this, because it are the classes itself that are written this was |
| * You **cannot** change a collection while you are using it in a ''foreach'' loop. |
| * most collections are using generics, to you need to specify the type(s) of the elements in the declaration of the variable |
| |
| A few code samples (please look at samples for the single classes [[collections:list|System.Collections.Generic.List]] and [[collections:dictionary|System.Collections.Generic.Dictionary]]) for deeper looks): |
| <code>using System.Collections.Generic |
| local oList as List<string> |
| local nCount as int |
| |
| oList := List<string>{} |
| oList:Add( "Hi girls" ) |
| oList:Add( "Hi guys" ) |
| nCount := oList:Count |
| foreach cItem as string in oList |
| // do something |
| next |
| oList:Remove( "Hi guys" ) |
| oList:RemoveAt( 0 )</code> |
| <code>local oDictionary as Dictionary<int,string> |
| local nCount as int |
| |
| oDictionary := Dictionary<int,string>{} |
| oDictionary:Add( 1, "Hi girls" ) |
| oDictionary:Add( 2, "Hi guys" ) |
| foreach oItem as KeyValuePair<int,string> in oDictionary |
| // do something |
| next</code> |
| |
| |
| |
| |
| |
| |
| |
| |
| |