小编Car*_*ght的帖子

在Dart中有一种快速的方法将int转换为double吗?

非常简单的问题.我有无用的课:

class Useless{
  double field;
  Useless(this.field);
}
Run Code Online (Sandbox Code Playgroud)

然后我提交致命罪并调用new Useless(0); 在检查模式(这是我运行我的测试的方式)爆炸,因为'int'不是'double'类型的子类型.

现在,如果我使用它,它可以工作new Useless(0.0),但老实说,我花了很多时间来纠正我的测试,把.0s放到各处,我觉得这样做很愚蠢.

作为一个临时措施,我重写了构造函数:

    class Useless{
      double field;
      Useless(num input){
          field = input.toDouble();
      }
    }
Run Code Online (Sandbox Code Playgroud)

但这很丑陋,如果经常打电话,我恐怕很慢.有一个更好的方法吗?

dart

25
推荐指数
6
解决办法
2万
查看次数

从Class对象中指定java中的泛型类型

为什么这是错的:

    Class<? extends Number> type = Integer.class;
    ArrayList<type> = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)

在给定类对象的情况下,是否无法实例化特定类型的类?


显然我永远不会直接这样做,这只是展示所需内容的一个例子.在我需要的实际代码中,我不知道该类型的名称.例如

    public void createAList(Class<? extends Number> type)  
{
    ArrayList<type> toReturn = new ArrayList<>();
    return toReturn;
}
Run Code Online (Sandbox Code Playgroud)

java generics reflection

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

在javafx中双向绑定ToggleGroup

想象一下,有一个定义鼠标模式的枚举:

public enum MouseMode {
SELECTION,
EDITING,
DELETING }
Run Code Online (Sandbox Code Playgroud)

想象一下,有一个由3个按钮组成的切换组:

    ToggleButton selection = new ToggleButton("Select");
    ToggleButton editing = new ToggleButton("Edit");
    ToggleButton deleting = new ToggleButton("Delete");
    ToggleGroup mouseSelection = new ToggleGroup();
Run Code Online (Sandbox Code Playgroud)

我希望一个字段MouseMode currentMode与toggle-group双向链接.每当设置切换时,相应地切换currentMode,但是如果某些外部进程改变currentMode(可能是按键),则切换组也会相应地进行调整.

我可以用2个听众做到这一点,但我想知道是否有办法创建自定义双向地图.

java javafx javafx-2 javafx-8

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

是否有一个“正确”的文件夹可以在 dart 中放置测试资源?

我有一个简单的飞镖课程,我正在尝试测试。
为了测试它,我需要打开一个 txt 文件,将内容提供给类的一个实例并检查输出是否正确。

我在哪里放置这个txt文件?txt 文件在测试之外是无用的。

另外,相关的,我如何始终如一地访问其目录?我尝试将它放在 test 文件夹中,但问题是:

System.currentDirectory
Run Code Online (Sandbox Code Playgroud)

如果我自己运行测试或脚本一次调用所有其他测试 dart 文件,则返回不同的目录

directory dart

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

在单元测试中等待Platform.RunLater

我有一个表示形式类,它存储一个XYChart.Series对象,并通过观察模型对其进行更新。通过使用Platform.runLater(...)完成系列更新

我要对此进行单元测试,确保runLater中的命令正确执行。如何告诉单元测试等待runLater命令完成?现在我要做的就是在测试线程上使用Thread.Sleep(...),给FXApplicationThread时间来完成,但这听起来很愚蠢。

java unit-testing javafx-2 javafx-8

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

从ArrayList中取代Java中没有替换

我有一个包含30个元素的arrayList.我想从这个列表中创建15个元素的许多子列表.这样做的有效方法是什么?

现在我克隆了ArrayList并使用remove(随机)来做,但我确信这太笨拙了.我该怎么做呢?Java有像R中的"样本"函数吗?



澄清:通过无替换的抽样,我的意思是随机获取原始列表中30个可用的15个独特元素.而且我希望能够反复这样做.

java statistics list

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

为什么Dart中最终字段的初始化错误?

我有一个带有两个final字段的简单类,其中一个是存储数据的映射,另一个是调用时更新数据的step函数:

class Data
{

  //for each name a list of observations
  final Map<String,List<double>> _dataMap;

  /**
   * the update step
   */
  final Step _updateStep;
Run Code Online (Sandbox Code Playgroud)

Step只是一个typedef.

现在,我想要一个具有一个参数的构造函数:一个接受引用Map<...>并返回new 的函数Step.这对我来说似乎是合乎逻辑的,更新程序需要引用地图来更新它.

为什么这个构造函数失败了?

  Data(Step initializer(Map<String,List<double>> dataReferences))
  : _dataMap = new Map(),
  _updateStep = initializer(_dataMap);
Run Code Online (Sandbox Code Playgroud)

错误发生在第二步

非法隐含访问接收者'this';

什么?这是怎么泄漏的?怎么解决?

constructor final dart

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

在 dart 中声明包含函数的字段的正确方法是什么?

想象一个像这样的愚蠢的类:

class ConditionalWorker{

var validityChecker= (inputs)=>true;

ConditionalWorker(this.validityChecker)

...
Run Code Online (Sandbox Code Playgroud)

现在我的问题是,声明有效性检查器字段的正确方法是什么?

本教程建议使用typedefs. 但这不太实用。首先,编写大量只能使用一次的 typedef 是一件苦差事。其次,这些 typedef 的出现会污染我的 IDE 的自动完成功能。

效果var最好,使用自定义设置器/构造函数参数来使其始终保持特定类型,但我知道样式指南不鼓励这样做。

我可以做Function<bool>,但这只是一个更美化的变量,工作量是相同的。

很遗憾,因为拥有这样的函数是完全合法的:

 bool every(bool test(E element));
Run Code Online (Sandbox Code Playgroud)

其中参数是一个定义良好的函数,但我不能以相同的方式声明字段:

bool test(E element);
Run Code Online (Sandbox Code Playgroud)

但希望还有一些我没有想到的同样好的事情。对吗?

functional-programming class dart

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

从简单的回归树绘制分区的2D空间

采取这种简单的回归树作为一个例子讲座.训练回归树并将Y分成两个参数.

这允许作者生成如下图形: 在此输入图像描述

有没有办法在ggplot2中生成类似的东西(包括空格标签)?

r ggplot2

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