所以我一直在努力解决这个问题,但我没有找到足够的信息。
在下一个代码中,有一个接收a数组的函数 链表(Integer),数组是方形的表示 内部有黑色和白色方块(1 =白色,0 =黑色),格式 是下一个:链表的第一个节点是白色,每个 下一个节点是最后一个节点的相反颜色。例如,如果 square是:white - >白色 - >白色 - >黑色 - >白色 - >黑色 - > 黑色链表将是3 - > 1 - > 1 - > 2 - > null(如果有的话) 如前所述,它们在链表中总结的连续颜色)。所以 我的代码是下一个:
public static int[][] restorePicture (LinkedList[] linked_list)
{
boolean black = false;
int[][] Input = new int [(linked_list.length)][];
for(int k = 0; k < linked_list.length; k++)
Input[k] = new int[linked_list[k].size()];
for(int i = 0;i < linked_list.length; i++)
{
black = false;
int j = 0;
while(linked_list[i].get(j) != linked_list[i].getLast())
{
if(black == false)
{
for(int z = (int) linked_list[i].get(j); z > 0 ;z--)
Input[j++][i] = 1;
black = true;
}
if(black == true)
{
for(int x = (int) linked_list[i].get(j); x > 0 ;x--)
Input[j++][i] = 0;
black = false;
}
}
}
for(int i = 0; i < Input.length; i++)
for(int j = 0; j < Input[j].length; j++)
System.out.println(Input[i][j]);
return Input;
}
答案 0 :(得分:3)
我假设您调用方法&#39; restorePicture&#39;使用简单的LinkedList而不是LinkedList的数组。 这就是你得到错误的原因。
检查代码中第10行的方法调用。在Eclipse中编译错误语句非常安静。
您收到的警告是因为您没有指定LinkedList的类型,因此您必须将参数定义更改为。
public static int[][] restorePicture (LinkedList<Integer>[] linked_list)
要创建一个新的LinkedLIst数组,您必须编码
LinkedList<Integer>[] linked_list = new LinkedList[input.length];