Custom Array[][] or Jagged Array or List or Dictionary, you tell me? need help understanding and how to do it

Job ID: 34331121

Budget: $10 – $30 AUD

I have a custom class
[System.Serializable]
public class Precept
{
public int Level;
public string ThePrecept;
public string Reference;
public string Verse;
private bool hasAsked = false;

public Precept(int lev, string theprecept, string reference, string ver)
{
this.Level = lev;
this.ThePrecept = theprecept;
this.Reference = reference;
this.Verse = ver;
}

I want to be able to store in an Array[][] or [,] based on Level (public int Level;)
ie. Array[level][precept class]
[precept class]
[precept class]
Array[1] [Precept Class of level 1]
[Precept Class of level 1]
Array[2] [Precept Class of level 2]
[Precept Class of level 2]
[Precept Class of level 2]
[Precept Class of level 2]

The first part of the array [] is just the level int, the second part of the array [][*] is all the classes that have that level int. See attached Array Data / Array Problem.
I have already written the CSV import and it works well, its just sorting the Precept[] array into a multidimensional array so that they can be accessed in Groups based on the Level INT. Each LEVEL can contain multiple classes some 3-4 others 10 or more.

I could explain better over Video and allow remote access to my machine for someone who can code this.
Related categories: C# Programming Unity 3D