web-dev-qa-db-fra.com

android - inverser l'ordre d'un tableau

J'ai un tableau d'objets.

Est-il possible de faire un nouveau tableau qui est une copie de ce tableau, mais dans l'ordre inverse? 

// my array
ArrayList<Element> mElements = new ArrayList<Element>();
// new array
ArrayList<Element> tempElements = mElements;

tempElements.reverse(); // something to reverse the order of the array
53
user401183

Vous pouvez le faire en deux étapes:

ArrayList<Element> tempElements = new ArrayList<Element>(mElements);
Collections.reverse(tempElements);
211
Ted Hopp

Pour Android sur Kotlin, cela peut être fait avec l'opération forEachReversedByIndex{} lambda d'Anko, comme ceci:

val tempElements = ArrayList<Element>(mElements.size)
mElements.forEachReversedByIndex{tempElements.add(it)}
0
DarkCygnus

Approche simple sans rien implémenter.

                ArrayList<YourObject> oldlist = new ArrayList<YourObject>();
                ArrayList<YourObject> newList = new ArrayList<YourObject>();
                int size = oldlist.size()-1;

                for(int i=size;i>=0;i--){
                    newList.add(oldlist.get(i));
                }
0
Sam