问题标签 [jagged-arrays]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
478 浏览

c# - 锯齿状的类数组(Nexus Mod Manager 的安装脚本)

我正在尝试为游戏 Skyrim 的 Nexus Mod Manager (nmm) 制作安装脚本。如果您不熟悉 nmm,您可以编写脚本使 mod 安装变得简单和动态。您可以选择使用 xml 或 c#。我正在做后者。我无法编译以下代码(通过编译我的意思是 nmm 会给我一个错误)。我是 c# 的新手,所以我可能在做一些根本错误的事情。我收到一个错误:“对象引用未设置为对象的实例”。我已经阅读了一些有关此错误的信息,但不明白我做错了什么。

无论如何,这是我的一些代码:

当我尝试分配类变量时,我的问题发生了。如果我注释掉 for 循环中的最后三行,代码编译得很好。显然,我计划扩展 GetRaces,但我需要先让它工作。

0 投票
2 回答
8925 浏览

java - 如何在 Java 中创建锯齿状二维数组?

我们的家庭作业要求我们使用锯齿状数组来存储二维布尔矩阵的值。是否有用于锯齿状数组的内置 java 类,还是我必须使用Arrayof手动创建它ArrayLists

0 投票
2 回答
800 浏览

java - 初始化锯齿状数组 Java

有没有更好的方法来用 Java 表示这个菜单结构?我认为问题在于我正在声明一个包含字符串数组的数组 - 不可能吧?

所以我尝试了这个:

还是好不了。

0 投票
1 回答
604 浏览

c# - 锯齿状数组类型属性

假设我有这样的财产:

调用代码可以随意更改数组的值,也可以替换数组本身。这可以通过隐藏 setter 来轻松防止,如下所示:

这允许调用代码更改值,但不能将数组更改为不同的数组,或更改大小。

此模式适用于多维数组,但不适用于锯齿状数组。如果我有这个:

主数组不能修改,子数组可以。如果我想让子数组只读,以便调用代码可以更改元素,但不能更改数组,该怎么办?

如何仅使交错数组的元素可修改?这包括 3D 及更高版本。

0 投票
1 回答
664 浏览

c++ - 锯齿状的类数组

在我的新工作中,我意识到迄今为止我实际使用的 C++ 技能有多么少。我现在正在通过一些自我强加的 OOP 练习而苦苦挣扎,并且被困在一系列参差不齐的课程中。

这是代码:

显然,ScheduleEntry (并且成员函数)在其他地方定义,并且我在尝试编译时遇到的错误如下:

在阅读了我能找到的锯齿状数组之后,这是我认为实现它的最简单、最易读的方式。首先要做的事——是吗?有没有更简单的方法?

接下来(当然)编译器错误。我怎么把打字搞砸了?

提前致谢。=)

编辑:

找到了快乐的媒介。

0 投票
1 回答
2026 浏览

c# - 直接将锯齿状数组转换为二维数组而不迭代每个项目?

我正在尝试将 DataTable 保存到 Excel 工作表中。我的代码是这样的。

Excel范围需要范围值作为数组[,],但我将DataTable作为锯齿状数组[] []。

是否有任何内置函数可以将锯齿状数组 [][] 直接转换为二维数组 [][] ?使用批量数据迭代 Excel、DataTable 和分配似乎更慢。

另外我不想为excel设置DSN查询..我选择excel存储以避免配置任何数据库..:PI在这里找到了将数据写入excel的方法的详细说明.. http://support。 microsoft.com/kb/306023

0 投票
1 回答
405 浏览

c# - 将锯齿状 2d 列表转置为 1d 列表

我正在实施 ZoomableCanvas http://blogs.msdn.com/b/kaelr/archive/2010/08/11/zoomableapplication2-a-million-items.aspx

它是一个 WPF 控件,允许在画布中虚拟化显示对象。为了利用虚拟化,该库要求您在数据源对象上实现一个名为“查询”的方法。Query 方法在给定 Rect 的情况下延迟返回 IEnumerable<int>,其中 int 表示元素在数据源中的位置,Rect 是画布的可见区域(画布中不可见的项目不返回,因此不绘制) . 我的数据源已排序,以便对 X 和 Y 值进行排序(myList[0] 将包含最小的 X,Y 坐标)

鉴于此信息,我可以简单地执行以下操作来获取我的物品

但是,我们正在遍历整个列表,并且列表中有 100k+ 项。这表现得非常糟糕,尤其是在查看画布的右下角时,因为这些项目位于列表的末尾。

所以我尝试转置数据,以便我可以在画布上的可见区域中获取点,并准确知道数组中对应的索引。

除了我的数据集不规则(我正在绘制地图)之外,此方法有效,因为地图可能缺少或不完整的“图块”。因此,我的阵列基本上是锯齿状的。锯齿状数据集缺少“瓦片”的插图

基本上,我正在寻找一种方法,可以快速识别一维数组中给定二维几何的元素,其中二维数组中的元素可能不完整或不连续。通常 [y * widthOfAllItems] + x 会给我正确的 2d -> 1d 转置。但由于缺少元素,等式不成立。任何帮助表示赞赏!

0 投票
5 回答
1075 浏览

c++ - 多种类型的锯齿状数组

我不确定是否可能,但锯齿状数组是否可以包含多种类型

我需要一个分层的数据结构,其中第一个 2D 层是字节类型然后接下来的 2D 层可以是整数类型或浮点类型,最后 2D 层将再次是字节,层的总数可以变化。

如果是的话,这可能吗,我将如何在 C# 中声明它以及如何在 C++ 中声明它?

0 投票
4 回答
26161 浏览

c++ - 具有可变大小行的 C++ 二维数组

你怎么能创建一个二维数组,比如说,arr[][]有 5 行,每行有可变数量的列?

可能有 4 列arr[5][] 的第一行arr[0][]

第二行arr[1][]有 5 列等等?

我不介意 STL 矢量解决方案,但我还不太了解矢量。

0 投票
1 回答
579 浏览

c# - 在锯齿状数组中插入列

目前我正在为每一行的所有列填充值,这非常慢。但根据业务逻辑,我知道至少 5 列的所有值都是 -1,大约 5 列的所有值都是相同的(但来自变量)。

因此,我想知道是否有一种通过将数组插入特定列索引来填充锯齿状数组的有效方法: