小编Mak*_*kPo的帖子

当我在Java中扩展ArrayList时,如何添加地图和过滤器?

我正在尝试创建一个table扩展的类ArrayList.在其中,我希望能够创建一个map采用lambda表达式并返回table带有映射值的new 的方法.我也想这样做filter.我使用地图和过滤很多,我不喜欢一遍又一遍地输入整个东西.

public abstract class Table<E extends Element> extends ArrayList<E> {
    // a lot of other stuff.

    public Table<E> map(/*WHAT DO I PUT HERE?*/ mapper) {
        return this.stream().map(mapper).collect(/*WHAT DO I PUT HERE?*/);
    }

    public Table<E> filter(/*WHAT DO I PUT HERE?*/ predicate) {
        return this.stream().filter(predicate).collect(/*WHAT DO I PUT HERE?*/);
    }
}
Run Code Online (Sandbox Code Playgroud)

我仍在试图找出泛型.也许有更好的方法.我不知道.我曾尝试复制原始代码中的内容ArrayList,但我尝试的所有内容似乎都会产生新的问题.

java generics extends arraylist java-8

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

JavaFX - 强制 GridPane 的子级适应单元格的大小

我试图强制 a 的子项GridPane适应其所在单元格的大小。在本例中,我正在创建一个月视图日历,并且无论其中有什么,列和行都是固定大小的。

在此日历上,每个单元格都包含一个法线VBox,每个单元格都VBox包含一个标签,显示该月的某一天以及该天的每个事件。很多日子都没有什么活动;其中一些只有一项活动;还有一些举办不止一场活动。

日历大小取决于窗口大小,并且会根据窗口增大和缩小。现在,如果单元格太小而无法容纳所有事件,那么单元格VBox中当天事件的高度就会变得比单元格大。

在此输入图像描述

标题行具有以下约束:

HEADER_CONSTRAINT = new RowConstraints(10, -1, 500, 
        Priority.NEVER, VPos.BASELINE, true);
Run Code Online (Sandbox Code Playgroud)

其他行有这个约束:

ROW_CONSTRAINT = new RowConstraints(30, 30, Integer.MAX_VALUE,
        Priority.ALWAYS, VPos.TOP, true);
Run Code Online (Sandbox Code Playgroud)

我认为我需要做的是:

grid.add(cell, c, r);
vbox.maxHeightProperty().bind(grid.getRow(r).heightProperty()); // <-- this line is not right, but something like this.
Run Code Online (Sandbox Code Playgroud)

java javafx

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

Python:对象中缺少“self”(不会自动传递)

这是我的代码:

from xml.etree.ElementTree import ElementTree
from xml.etree.ElementTree import Element
import xml.etree.ElementTree as etree
import os

class Accounts:
    def __init__(self):
        self.file_path = os.path.join('lib', 'accounts.xml')

    def get(self, key, value):
        tree = ElementTree.parse(self.file_path)
        print(tree)

accounts = Accounts
accounts.get('k', 'v')
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Traceback (most recent call last):
  File ".\XML_Build.py", line 15, in <module>
    accounts.get('k', 'v')
TypeError: get() missing 1 required positional argument: 'value'
Run Code Online (Sandbox Code Playgroud)

当我使用时accounts.get(key='k', value='v'),错误提示我丢失了'self'。我以前从未见过这个问题。我如何通过自我?我还以为自动通过了

python error-handling

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

标签 统计

java ×2

arraylist ×1

error-handling ×1

extends ×1

generics ×1

java-8 ×1

javafx ×1

python ×1