Вы могли разыграть предмет:
var acct = (Account)listOfAccounts[0];
acct.balance.ToString();
Но не делай этого!
ArrayList
в .Net устарел с тех пор, как .Net 2.0 представил дженерики почти 15 лет назад. Нет никаких оснований для когда-либо использовать его новый код. Вместо этого используйте List<T>
, то же самое, но строго типизированный.
Пока я здесь: тоже не совсем нормально использовать тип double
для денег. При работе с деньгами вы всегда должны использовать decimal
.
Соберите все это так:
public class Account
{
public decimal Balance {get; set;}
public Account() { }
public Account(decimal balance)
{
this.Balance = balance;
}
}
class Program
{
static void Main(string[] args)
{
var listOfAccounts = new List<Account>();
listOfAccounts.Add(new Account(133.1m));
Console.WriteLine(listOfAccounts[0].Balance);
Console.ReadKey(true);
}
}
И с инициализатором коллекции для удовольствия:
class Program
{
static void Main(string[] args)
{
var listOfAccounts = new List<Account> {new Account(133.1m)};
Console.WriteLine(listOfAccounts[0].Balance);
Console.ReadKey(true);
}
}