如何在J编程语言中进行数组访问?例如,使用C++作为我的伪代码语言:
int M [100]; // declare an array called M
int j = 5; //index into the array
int y = 10; //value to store or load from the array
M[j] = y; // store y into the array
y = M[j]; // load y from the array在惯用的J中,这些类型的数组访问看起来像什么?
发布于 2012-06-11 03:29:15
用J编写这段代码的字面意义(但仍然是相当惯用的)方式如下所示。
m =: 100 $ 0 NB. This means create a 1d array consisting of 100 zeros.
j =: 5
y =: 10完成初始化后,现在我们准备好回答问题的实质,其中包括the } adverb ("Item Amend" and "Amend")的两种不同用法。
m =: y j } m将两个参数放在}的左侧会导致J将右侧参数m的第j个元素替换为值y。注意:我们必须将结果重新赋值给m,因为y j } m的结果只是简单地计算了一个新的数组,其中包含了您使用}动词请求的更改。
y =: j } m只将一个参数放在}的左边会导致J提取m的第j个元素并返回它。在这种情况下,我们将y设置为结果。
https://stackoverflow.com/questions/10693521
复制相似问题