- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
像一个简单的数组一样思考:
Console.WriteLine("Number: ");
int x = Convert.ToInt32(Console.ReadLine());
string[] strA = new string[x];
strA[0] = "Hello";
strA[1] = "World";
for(int i = 0;i < x;i++)
{
Console.WriteLine(strA[i]);
}
现在,我该如何使用双数组来实现?
我已经试过了:
Console.WriteLine("Number 1: ");
int x = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Number 2: ");
int y = Convert.ToInt32(Console.ReadLine());
// Got an error, right way string[x][];
// But how can I define the second array?
string[][] strA = new string[x][y];
strA[0][0] = "Hello";
strA[0][1] = "World";
strA[1][0] = "Thanks";
strA[1][1] = "Guys";
for(int i = 0;i < x;i++)
{
for(int j = 0;i < y;i++)
{
// How can I see the items?
Console.WriteLine(strA[i][j]);
}
}
如果有更简单的方法,我会很乐意学习。
仅供学习,我是第一次学习double array,请耐心等待:)
这是我的例子: https://dotnetfiddle.net/PQblXH
最佳答案
您正在使用锯齿状数组(即数组 string[][]
的数组),而不是2D 数组(字符串[,]
)
如果你想硬编码:
string[][] strA = new string[][] { // array of array
new string[] {"Hello", "World"}, // 1st line
new string[] {"Thanks", "Guys"}, // 2nd line
};
如果您想提供x
和y
:
string[][] strA = Enumerable
.Range(0, y) // y lines
.Select(line => new string[x]) // each line - array of x items
.ToArray();
最后,如果我们想在不使用 Linq 的情况下初始化 strA
但所有 for
循环都很好(不像二维数组,锯齿状 数组可以包含不同长度的内部数组):
// strA is array of size "y" os string arrays (i.e. we have "y" lines)
string[][] strA = new string[y][];
// each array within strA
for (int i = 0; i < y; ++i)
strA[i] = new string[x]; // is an array of size "x" (each line of "x" items)
编辑让我们逐行打印锯齿状数组:
很好的旧for
循环
for (int i = 0; i < strA.Length; ++i) {
Console.WriteLine();
// please, note that each line can have its own length
string[] line = strA[i];
for (int j = 0; j < line.Length; ++j) {
Console.Write(line[j]); // or strA[i][j]
Console.Write(' '); // delimiter, let it be space
}
}
紧凑的代码:
Console.Write(string.Join(Environment.newLine, strA
.Select(line => string.Join(" ", line))));
关于c# - 如何制作锯齿状阵列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55300957/
使用Cocos2d画一个更粗的圆: glLineWidth(20); ccDrawCircle(self.ripplePosition, _radius, 0, 50, NO); 但这就是显示的内容(
本学期我在计算机科学类(class)中遇到了一个挑战问题,这是上学期的复习题,但问题是:“给定一个参差不齐的数组,查找数组中是否有任何行的乘积为 48,如果是,则返回该行号。如果没有行包含 48 的乘
我一直在尝试将 sklearn 决策树中的 .dot 图插入到 pyplot 子图中,并且一直在努力做到这一点。 pygraphviz 库拒绝在我的 Windows 系统上工作,因此我使用以下方法插入
我有一个 UITableViewCell 子类,它有一些标签。所有这些标签都带有模糊或锯齿状的文本。它在设备上比在模拟器上更引人注目。 这是一个看起来很正常的标签: 这是一个看起来很糟糕的标签: 我该
作为LINQ-to-Entities投影的结果,我最终得到一个List,如果手动创建它,其外观如下所示: List data = new List(); data.Add(new ChartDataR
为什么我的css圈不流畅? 如果我做一个 HTML5 Canvas 真的很棒。 #circle { width: 100px; height: 100px;
我不明白 Numpy.arrays 相乘时会发生什么。 例如,带有锯齿状(或参差不齐)的数组 import numpy as np a = np.array([[1,2,3],[100,200]])
我正在尝试用 Python 计算时间序列的 Hurst 指数,该值决定了量化金融时间序列的一些均值回归特征。我采用了任意长度的时间序列,并选择将其拆分为数据 block ,该过程是计算 Hurst 指
我正在建立一个网站 - http://www.efficaxdevelopment.com 正如您在加载页面(在 IE 中)时看到的那样,页面上不是图像的文本或菜单看起来很糟糕,而在 FF 和 Chr
If you check, for instance, this shopping page ,您可以看到价格倾斜了几度。在 Chrome 上,这看起来“恰到好处”,在 Firefox 上,这看起来非
我是一名优秀的程序员,十分优秀!