102 lines
1.6 KiB
Markdown
102 lines
1.6 KiB
Markdown
# List
|
|
|
|
data structure that represents a list of objects that can be
|
|
accessed by index.
|
|
Similar to array, but can dynamically increase/decrease in size
|
|
using System.Collection.Generic
|
|
|
|
```C#
|
|
// error with array
|
|
String[] food = new string[3];
|
|
|
|
food[0] = "pizza";
|
|
food[1] = "hamburger";
|
|
food[2] = "hotdog";
|
|
food[3] = "Salad";
|
|
|
|
foreach(String item in food)
|
|
{
|
|
Console.WriteLine(item);
|
|
}
|
|
|
|
```
|
|
|
|
```C#
|
|
using System.Collection.Generic
|
|
|
|
List<String> food = new List<String>();
|
|
|
|
food.Add("fries");
|
|
food.Add("pizza");
|
|
food.Add("hamburger");
|
|
food.Add("hotdog");
|
|
food.Add("Salad");
|
|
food.Add("fries");
|
|
|
|
foreach(String item in food)
|
|
{
|
|
Console.WriteLine(item);
|
|
}
|
|
|
|
// accessing an element
|
|
Console.WriteLine(food[1]);
|
|
|
|
food.Remove("fries");
|
|
|
|
food.Insert(0,"sushie");
|
|
|
|
Console.WriteLine(food.Count());
|
|
|
|
Console.WriteLine(food.IndexOf("hotdog"));
|
|
Console.WriteLine(food.LastIndexOf("fries"));
|
|
Console.WriteLine(food.Cotains("pizza"));
|
|
food.Sort();
|
|
food.Reverse();
|
|
food.Clear();
|
|
String[] foodArray = food.ToArray();
|
|
food.Clear();
|
|
```
|
|
|
|
## List of object
|
|
|
|
```C#
|
|
List<Player> player = new List<Player>();
|
|
|
|
Player player1 = new Player ("Chad")
|
|
Player player2 = new Player ("Steve")
|
|
Player player3 = new Player ("Karen")
|
|
|
|
|
|
players.Add(player1);
|
|
players.Add(player2);
|
|
players.Add(player3);
|
|
|
|
// or anonymously
|
|
|
|
players.Add(new Player ("Karen"));
|
|
players.Add(new Player ("Chad"));
|
|
players.Add(new Player ("Steve"));
|
|
|
|
foreach(Player player in players)
|
|
{
|
|
Console.WriteLine(player);
|
|
}
|
|
|
|
class Player
|
|
{
|
|
public string username;
|
|
|
|
public Player(String username)
|
|
{
|
|
this.username=username;
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return username;
|
|
|
|
}
|
|
}
|
|
|
|
```
|