Несколько вещей:
PowerShell довольно хорош, он готов к использованию без использования явного ArrayList.
$myArray = @()
$myArray += "Sam"
$myArray += "Tom"
Или вы можете сделать
$myArray = @("Sam", "Tom", "John")
Чтобы удалить предмет, мы можем сделать несколько забавных вещей.
$myArray = $myArray | ? {$_ -ne "Sam"}
Но если все, что вам действительно нужно, это получить список методов и свойств, вы можете использовать отражение (класс .NET) для извлечения этой информации, например:
[reflection.assembly]::GetAssembly("System.Collections.ArrayList") | Get-Member
Или только названия методов и типов
[reflection.assembly]::GetAssembly("System.Collections.ArrayList") | Get-Member | Select Name, MemberType
Это даст вам:
Name MemberType
---- ----------
ModuleResolve Event
CreateInstance Method
Equals Method
GetCustomAttributes Method
GetCustomAttributesData Method
GetExportedTypes Method
GetFile Method
GetFiles Method
GetHashCode Method
GetInterface Method
GetLoadedModules Method
GetManifestResourceInfo Method
GetManifestResourceNames Method
GetManifestResourceStreamMethod
GetModule Method
GetModules Method
GetName Method
GetObjectData Method
GetReferencedAssemblies Method
GetSatelliteAssembly Method
GetType Method
GetTypes Method
IsDefined Method
LoadModule Method
ToString Method
CodeBase Property
EntryPoint Property
EscapedCodeBase Property
Evidence Property
FullName Property
GlobalAssemblyCache Property
HostContext Property
ImageRuntimeVersion Property
IsDynamic Property
IsFullyTrusted Property
Location Property
ManifestModule Property
PermissionSet Property
ReflectionOnly Property
SecurityRuleSet Property
Или как @PatrickS. упомянуто, есть команда PowerShell, чтобы пропустить вызов класса Reflection:
"System.Collections.ArrayList" | Get-Member