- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个用工厂模拟制作的离散事件模拟模型,仅使用充满变量、方法和表格的网络,但不使用任何 Material 流对象。
我的任务是将这个模型转换成Java代码。
我首先使用 ANTLRv4 为 SimTalk(植物模拟中的编程语言)编写语法文件,以将该模型转换为 Java。然后我编写了一个访问者,它为每个网络打印一个 Java 类。
我的大问题是用java表示表格,因为它们是如此动态(至少我认为)
作为表格的示例,这里有一张图片: Example Table .
行索引和列索引对于访问单元格是可选的。每列都有一个数据类型,但这可以使用表方法 setDataType 进行更改,如 table.setDataType(3, "String")
.
访问单元格的示例方法:
is
i : Integer;
a : table[string,integer];
s1 : String;
do
a.create; //table is instanced
a[1,1] := "Hello" //value of cell at Column: 1 and Cell: 1 is "Hello"
Table[3,1] := a; //value of this cell is the table a
i := table["Columnindex 1", 1]; //value of i is 1
i := table["Columnindex 1", "Rowindex"] + table[1, 2] //value of i is 5
s1 := table[0, 0] //value of s1 is "Columnindex"
end;
首先,我考虑为每个表创建一个类,但这会太多类,并且对于更改数据类型等来说太静态。然后我想到了 HashMap<Integer,HashMap<Integer, Object>>
与 HashMap<String, Integer>
对于列索引和行索引,如果需要,请在 getter/setter 中查看它们。但是列没有类型安全,我每次获取都需要强制转换。
到目前为止,我拥有的“最佳”解决方案是使用列的正确数据类型创建动态 HashMap - 这样你就得到了 ClassCastException
将 int 放入 String Map 时。但我还需要转换每个 get 。
我不知道传输此数据的最佳方法是什么,因此即使使用“坏”代码它也能工作,或者尝试将这些表转移到 java 是否有意义。
有什么想法吗?预先感谢!
我希望我没有写太多,有人可以帮助我出主意。
最佳答案
您可以编写一个表类并使其成为通用的。看了你的帖子,我相信它会起作用。泛型允许您使用任何非原始数据类型的变量“T”来实例化一个类。
关于java - 如何将动态表从 Plant Simulation 传输到 Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35918145/
我在我的 Controller 中添加了一个名为移植的自定义操作。我只是想呈现一个下拉表单以根据“tray_id”选择要定位的位置 我的路线是这样的: resources :plants do
题目地址:https://leetcode.com/problems/flower-planting-with-no-adjacent/ 题目描述 Youhave N gardens, label
我有一个用工厂模拟制作的离散事件模拟模型,仅使用充满变量、方法和表格的网络,但不使用任何 Material 流对象。 我的任务是将这个模型转换成Java代码。 我首先使用 ANTLRv4 为 SimT
我有以下问题, 假设我有以下单元格(非常简化):CBA 4.5 01/22/2019 ,我想用VBA种一个BDP()在相邻单元格中运行,以找出 ISIN 是什么。如果没有 excel,我会使用 =BD
我们有市场数据处理程序,可以向 KDB Ticker Plant 发布报价。为此,我们使用 exxeleron q java 库。不幸的是,延迟非常高:当我们尝试插入一批记录时,延迟会达到数百毫秒。您
我的任务是为 C/C++ 类创建一个简单的扫雷克隆。它需要使用 10x10 字符 2D 数组作为雷区。 我需要在 field 上随机放置 5 个地雷。空白处应使用空格(' ')填充,而有地雷的位置应使
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题吗? 通过 editing this post 添加细节并澄清问题. 关闭 5 年前。 Improve t
Problem Statement There are N plants in a garden. Each of these plants has been added with some amou
这个相当简单的 SQL 查询在从 LINQ 尝试时被证明是非常令人困惑的。 我有一个 SQL 表 Plant带列ZoneMin . 我想找到列中值的最小值和最大值。 T-SQL 中的答案非常简单: S
这个相当简单的 SQL 查询被证明在从 LINQ 尝试时非常令人困惑。 我有一个包含 ZoneMin 列的 SQL 表 Plant。 我想找到列中值的最小值和最大值。 T-SQL 中的答案非常简单:
我正在尝试在处理 javascript 时实现一个分形工厂(最高级别 - 6)。即使满足基本条件,我也会收到“超出最大调用堆栈大小”错误。 代码如下:第一个函数自定义画线根据长度、 Angular 和
我是一名优秀的程序员,十分优秀!