Hy,
我对JAVA有点陌生,有个大问题。当我向列表中添加元素时
以下是代码:
// Global variables
private static int rows = 20;
private static int columns = 30;
private static String[][] labirinth = new String[rows][columns];
private static List<int[]> walls = new ArrayList<int[]>();
// Local variables inside a function
int[] wall = new int[2];
if(row - 1 <= rows && labirinth[row-1][column] == "*")
{
wall[0] = row-1;
wall[1] = column;
walls.add(wall);
}
if(row + 1 <= rows && labirinth[row+1][column] == "*")
{
wall[0] = row+1;
wall[1] = column;
walls.add(wall);
}
if(column - 1 <= columns && labirinth[row][column-1] == "*")
{
wall[0] = row;
wall[1] = column-1;
walls.add(wall);
}
if(column + 1 <= columns && labirinth[row][column+1] == "*")
{
wall[0] = row;
wall[1] = column+1;
walls.add(wall);
}
最后,
walls
变量将多次保存wall
的最后一个结果。
谢谢你的帮助!
始终更改同一对象:
int[] wall = new int[2];
但每次为墙设置新值并将其添加到列表之前,您应该:
wall = new int[2];
如果您不这样做,您将每次更改相同的墙壁坐标,最终只有一面墙壁具有您上次设置的坐标。
// Local variables inside a function
int[] wall = null;
if(row - 1 <= rows && labirinth[row-1][column] == "*")
{
wall = new int[2];
wall[0] = row-1;
wall[1] = column;
walls.add(wall);
}
if(row + 1 <= rows && labirinth[row+1][column] == "*")
{
wall = new int[2];
wall[0] = row+1;
wall[1] = column;
walls.add(wall);
}
...
我正在学习用java实现链表类。但每次调用get方法时,都会得到最后一个节点的内容。我不知道为什么。代码如下:, 我得到的结果是, 我想在类中添加一些数据,并创建该类的链接列表。 提前谢谢!
Spark-Scala环境中的函数有一些问题。我想在我的DataFrame中添加一个新列,如下所示: 变成: 但是Spark返回给我这个错误: 你能帮我吗?非常感谢!
我有一个记录。 我的
我有一个对象数组,希望删除所有具有特定键值的对象。 该数组如下所示:
问题内容: 我有一个对象数组,希望根据特定的对象对进行修剪。我想创建一个数组,此特定对仅包含一个对象。将重复项的哪个对象复制到新数组并不重要。 例如,我要基于的属性进行修整,创建一个仅包含每个值之一的新数组: 会成为: 是否存在会循环执行此操作的JavaScript或Angular函数? 编辑:要筛选的属性嵌套在另一个属性中。 问题答案: 您可以为此使用下划线:
有太多关于大致相同主题的问题,但我找不到我想要的。如果我错过了,我很抱歉。 我正在尝试散集具有公共逻辑元素但使用不同标记定义的XML文件: 两个<代码> 我可以这样做: 所需要的只是在和中实现并分别返回或。 然而,在中有一个属性并以某种方式告诉JAXB将这两个字段映射到它似乎更简单。 我是不是想多了?你将如何实现它? (当然,我无法控制输入XML。如果可能的话,我还想避免使用MOXy的解决方案,因