У меня есть арраилист колоды карт 1-52, и они перетасовываются, и я бы хотел разделить колоду пополам (0,25) и (26,51) на двух игроков. Но я вижу только ответы, которые используют List <>, хотя я бы хотел, чтобы каждый игровой колодец был арраистом, чтобы не мешать другим уже созданным методам. Есть ли способ держать обе игровые колоды в качестве арраистов?
import java.util.ArrayList;
import java.util.Collections;
public class Methods {
public static ArrayList<Integer> deck = new ArrayList<Integer>();
public static ArrayList<Integer> deckPlayerOne = new ArrayList<Integer>();
public static ArrayList<Integer> deckPLayerTwo = new ArrayList<Integer>();
public static ArrayList<Integer> generateDeck(){
for(int i=1; i<53; i++){
deck.add(i);
}
return deck;
}
public static ArrayList<Integer> shuffle(){
Collections.shuffle(deck);
return deck;
}
public static void splitDeck(){
// deckPlayerOne = deck.subList(0, 25); <---- location of error
}
public static ArrayList<Integer> playerOneDeck(){
}
}
public static ArrayList<Integer> platerTwoDeck(){
}
}
Возможно, я не понял ваш вопрос, но если вы хотите, чтобы ArrayList был разделен на два других, вы можете использовать это:
ArrayList myArrayList = new ArrayList();
ArrayList part1 = new ArrayList(myArrayList.subList(0, 25));
ArrayList part2 = new ArrayList(myArrayList.subList(26, 51));
Это то, что вы хотите?