using System;
using System.Collections.Generic;
using System.Reflection;
public class Program {
public static void Main() {
var size = 1000000000;
var chars = new char[size]; // it's fine
var ints = new int[size]; //Array dimensions exceeded supported range. [System.OutOfMemoryException: Array dimensions exceeded supported range.]
var strings = new string[size]; //Array dimensions exceeded supported range. [System.OutOfMemoryException: Array dimensions exceeded supported range.]
//var list = new List<string>(size); //Array dimensions exceeded supported range. [System.OutOfMemoryException: Array dimensions exceeded supported range.]
}