小编Mil*_*rad的帖子

JavaFX 从 BorderPane 添加和删除节点

我想以编程方式添加和删除BorderPane. 问题是当我添加 a 时Node,它不可见。 BorderPaneStackPane在 FXML 文件中定义。

我想做这样的事情:

StackPane temp = (StackPane) borderPane.getChildren().get(1);
borderPane.getChildren().remove(1);
borderPane.getChildren().add(0, temp);
Run Code Online (Sandbox Code Playgroud)

我试过了,borderPane.requestLayout()但它不起作用。

java eclipse javafx fxml

4
推荐指数
1
解决办法
4692
查看次数

模拟静态方法

我想模拟在其他静态方法中调用的静态方法.

public class MyClass
{
    public static void methodA(String s)
    {
        ...
        methodB(s);
        ...
    }
    public static void methodB(String s)
    {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

所以,我想嘲笑methodA,但我想跳过电话methodB.我尝试了几乎所有我能找到的解决方案,没有任何成功.每次都methodB被召唤.

我使用的一些解决方案:

PowerMockito.suppress(method(MyClass.class, "methodB"));
MyClass.methodA("s");
Run Code Online (Sandbox Code Playgroud)

_

PowerMockito.stub(method(MyClass.class, "methodB"));
MyClass.methodA("s");
Run Code Online (Sandbox Code Playgroud)

_

PowerMockito.mockStatic(MyClass.class);
doNothing().when(MyClass.class, "methodB", anyString());
MyClass.methodA("s");
Run Code Online (Sandbox Code Playgroud)

还有很多人......任何人都知道如何解决这个问题?

java unit-testing mocking mockito powermock

3
推荐指数
1
解决办法
166
查看次数

PHP数组值为key

我有这个数组:

params {
  [0] => {
    name  => "xxx"
    value => "yyy"
  } 
  [1] => {
    name  => "uuu"
    value => "vvv"
  }
}
Run Code Online (Sandbox Code Playgroud)

我想实现这个目标:

params {
  [0] => {
    xxx => "yyy"
  }
  [1] => {
    uuu => "vvv" 
  }
}
Run Code Online (Sandbox Code Playgroud)

我可以这样做:

foreach ($params as &$param) {
  $param[$param['name']] = $param['value'];
  unset($param['name']);
  unset($param['value']);
  unset($param);
}
Run Code Online (Sandbox Code Playgroud)

但我想知道这是否可以更优雅的方式完成?

php arrays

1
推荐指数
1
解决办法
116
查看次数

标签 统计

java ×2

arrays ×1

eclipse ×1

fxml ×1

javafx ×1

mocking ×1

mockito ×1

php ×1

powermock ×1

unit-testing ×1