Tableau à deux dimensions de Listes

Je suis dans le besoin de une matrice en deux dimensions de liste, par exemple, ArrayList, et je me demande ce qui est le plus préférable dans ce cas. Il ne doit être de taille 4x4.

Dois-je utiliser quelque chose comme

    ArrayList[][] foo = new ArrayList[4][4];

ou

    ArrayList<SomeClass>[][] foo = new ArrayList[4][4];

et initialiser tous les éléments avec le bon type dans une boucle for ou

    ArrayList<ArrayList<ArrayList<SomeClass>>> foo = ArrayList<ArrayList<ArrayList<SomeClass>>>();

La première méthode génère des avertissements, comme il devrait être paramétrées et si j'ajoute l'utilisation de la deuxième-je obtenir unchecked conversion des avertissements. Mais si je boucle sur les éléments et les initialiser, il ne devrait pas y avoir de problème, même si j'ai toujours l'avertissement? La dernière méthode ne permet pas de générer des avertissements et fonctionne probablement très bien, mais il se sent un peu en désordre.

EDIT: j'Ai quelques belles réponses à ma question, même si elle était un peu floue. Mais c'était essentiellement de la façon de faire un tableau de Listes. Créer une classe personnalisée pour gérer les lignes/colonnes, il fait un beaucoup plus facile.

  • La deuxième méthode devrait lire: ArrayList<SomeClass>[][] foo = new ArrayList<SomeClass>[4][4];, cependant, ayant un tableau de listes semble un peu bizarre. Avez-vous vraiment besoin d'un tableau en 2 dimensions? Si oui, pourriez-vous préciser un peu plus d'informations sur la raison?
  • Ayant ArrayList<SomeClass>[][] foo = new ArrayList<SomeClass>[4][4]; Est produit le message d'erreur "Impossible de créer un générique de tableau de ArrayList<SomeClass>, c'est pourquoi je l'ai laissée 🙂
  • Et la raison pour laquelle j'ai besoin c'est que j'ai une table contenant des "résultats". En fonction du résultat d'une opération, je veux ajouter ces objets à l'une de ces listes dans le tableau 2D. Ne fait que rendre les choses plus claires? 🙂
InformationsquelleAutor Mattias | 2011-07-18