Я создал два класса, один из которых называется «Bucket
», а другой - «Player
».Создание массива, содержащего несколько массивов
В «Bucket» у меня есть метод конструктора, который создает виртуальный ковш (т. Е. Малый массив), который содержит три значения - 1, 1 и 1. Также я создал метод для получения массива ведра.
В классе «Player» я создал метод, который использует больший массив (я назвал этот более массивный массив «ArrayOfBuckets»), который использует цикл для хранения нового ведра при каждом значении индекса, вплоть до определенная точка (когда i> NumberSticks). Однако, когда я пытаюсь установить
ArrayofBuckets[i] = bucketInstance.getBucket();
Я получаю сообщение об ошибке от Eclipse, говоря, что "Type mismatch: cannot convert from Bucket to int"
. Я потратил час, пытаясь решить эту проблему, но безрезультатно. Любая помощь будет действительно приятной. Большое спасибо, и вот весь код, который используется:
Игрок, Класс:
import java.util.Scanner;
public class Player {
Scanner scan = new Scanner(System.in);
public String name;
private int pType;
private int[] ArrayOfBuckets;
public Player(String tempName)
{
this.name = tempName; //this. is unneccessary
}
public void ArrayOfBuckets(int NumberSticks) //this is a constructor method and creates the arrays that contains a
{
ArrayOfBuckets = new int[NumberSticks];
int i = 0;
while(i<NumberSticks)
{
Bucket bucketInstance = new Bucket();
ArrayOfBuckets[i] = bucketInstance.getBucket();//new Bucket(); //ADD THIS
i++;
}
}
и Bucket Класс:
import java.util.Random;
public class Bucket {
// private int[][] largeArray = null; //WTF DO I DO HERE
private int AIChoiceStick;
private int[] bucket;
private Random random = new Random();
private int CurrentScore[] = new int[51]; //at max, if 100 sticks are initially chosen, then each player takes at max 50 sticks,
private int h = 0; //^so why not have one more in case
public Bucket()
{
bucket = new int[3];
bucket[0] = 1;
bucket[1] = 1;
bucket[2] = 1;
public int[] getBucket()
{
return bucket;
}
'public void ArrayOfBuckets (int NumberSticks)' is ** not ** a 'constructor'. –
Вы уверены, что указали нам код, который дает вам проблему? Это прямая копия или вставка? –