Questions tagged «arrays»

数组是一种有序的数据结构,由一组元素(值,变量或引用)组成,每个元素由一个或多个索引标识。当询问数组的特定变体时,请使用以下相关标记:[vector],[arraylist],[matrix]。使用此标签时,在特定于编程语言的问题中,使用正在使用的编程语言对问题进行标签。


12
在Ruby中遍历数组的“正确”方法是什么?
尽管有很多缺点,PHP在这一点上还是相当不错的。数组和哈希之间没有区别(也许我很天真,但这对我来说似乎显然是正确的),并且可以遍历任何一个 foreach (array/hash as $key => $value) 在Ruby中,有很多方法可以执行这种操作: array.length.times do |i| end array.each array.each_index for i in array 散列更有意义,因为我只是经常使用 hash.each do |key, value| 为什么我不能对数组执行此操作?如果我只想记住一种方法,我想我可以使用each_index(因为它使索引和值都可用),但是不得不这样做,array[index]而不是仅仅使人烦恼value。 哦,对,我忘了array.each_with_index。然而,这一次吮吸,因为它去|value, key|和hash.each去|key, value|!这不是疯了吗?
341 ruby  arrays  loops 

12
如何从JavaScript中的数组中删除元素?
var arr = [1,2,3,5,6]; 删除第一个元素 我想删除数组的第一个元素,使其变为: var arr = [2,3,5,6]; 删除第二个元素 扩展这个问题,如果我想删除数组的第二个元素以使其变为: var arr = [1,3,5,6];
340 javascript  arrays 

13
在Swift中向数组添加元素
假设我有一个数组,例如: var myArray = ["Steve", "Bill", "Linus", "Bret"] 然后我想将一个元素推/追加到所述数组的末尾,以获得: ["Steve", "Bill", "Linus", "Bret", "Tim"] 我应该使用哪种方法? 那我想在数组的前面添加一个元素呢?是否有固定的时间班次?
340 ios  arrays  swift 


7
与C#中一样,将TypeScript对象作为字典类型
我有一些使用对象作为字典的JavaScript代码。例如,“个人”对象将保留从电子邮件地址键入的一些个人详细信息。 var people = {<email> : <'some personal data'>}; adding > "people[<email>] = <data>;" getting > "var data = people[<email>];" deleting > "delete people[<email>];" 可以在Typescript中描述吗?还是我必须使用数组?


25
从现有阵列获取子阵列
我有10个元素的数组X。我想创建一个新数组,其中包含X中所有从索引3开始到索引7结束的元素。当然,我可以轻松编写一个循环来为我做一个循环,但是我想保持代码尽可能整洁。C#中有什么方法可以帮我吗? 类似于(伪代码)的东西: Array NewArray = oldArray.createNewArrayFromRange(int BeginIndex , int EndIndex) Array.Copy不符合我的需要。我需要新阵列中的项目才能克隆。Array.copy只是C-Style的memcpy等效物,不是我想要的。
335 c#  .net  arrays 

22
PHP多维数组按值搜索
我有一个要在其中搜索uid并获取数组键的数组。 例子 假设我们有以下二维数组: $userdb = array( array( 'uid' => '100', 'name' => 'Sandra Shush', 'pic_square' => 'urlof100' ), array( 'uid' => '5465', 'name' => 'Stefanie Mcmohn', 'pic_square' => 'urlof100' ), array( 'uid' => '40489', 'name' => 'Michael', 'pic_square' => 'urlof40489' ) ); 函数调用search_by_uid(100)(第一个用户的uid)应返回0。 函数调用search_by_uid(40489)应返回2。 我尝试进行循环,但是我想要更快的执行代码。




12
为什么可变长度数组不是C ++标准的一部分?
在过去的几年中,我很少使用C。今天,当我阅读此问题时,遇到了一些我不熟悉的C语法。 显然,在C99中,以下语法有效: void foo(int n) { int values[n]; //Declare a variable length array } 这似乎是一个非常有用的功能。是否曾有关于将其添加到C ++标准的讨论,如果是,为什么将其省略? 一些潜在的原因: 编译器厂商难以实施 与标准的其他部分不兼容 可以使用其他C ++结构来模拟功能 C ++标准声明数组大小必须是一个常量表达式(8.3.4.1)。 是的,我当然知道在玩具示例中可以使用std::vector<int> values(m);,但这会从堆而不是堆栈中分配内存。如果我想要像这样的多维数组: void foo(int x, int y, int z) { int values[x][y][z]; // Declare a variable length array } 该vector版本变得很笨拙: void foo(int x, int y, int z) …


15
将2D数组传递给C ++函数
我有一个函数,希望将可变大小的2D数组作为参数。 到目前为止,我有这个: void myFunction(double** myArray){ myArray[x][y] = 5; etc... } 我在代码的其他地方声明了一个数组: double anArray[10][10]; 但是,打电话myFunction(anArray)给我一个错误。 传递数组时,我不想复制该数组。对数组所做的任何更改myFunction都应更改的状态anArray。如果我理解正确,我只想将指向2D数组的指针作为参数传递。该函数还需要接受不同大小的数组。因此,例如[10][10]和[5][5]。我怎样才能做到这一点?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.