可以在Java上替换数组吗?

可以在Java上替换数组吗?,java,android,arrays,Java,Android,Arrays,在为Android开发应用程序时,我想记录只在几秒钟内可用的数据,因此我想使用一个每次都向右移动的数组。类似于: i>i+1, i+1>i+2, i+2>i+3 ... 是否可以直接执行此操作,或者每次要添加信息时都必须使用for来移动阵列上的所有数据?您可以使用队列: 您可以使用队列: 您是否考虑过使用堆栈?我不确定Android SDK中是否有类似的东西,但您要求使用Java:)您考虑过使用堆栈吗?我不确定Android SDK中是否有类似的东西,但您要求使用Java:)

在为Android开发应用程序时,我想记录只在几秒钟内可用的数据,因此我想使用一个每次都向右移动的数组。类似于:

i>i+1, i+1>i+2, i+2>i+3 ...

是否可以直接执行此操作,或者每次要添加信息时都必须使用
for
来移动阵列上的所有数据?

您可以使用队列:

您可以使用队列:

您是否考虑过使用堆栈?我不确定Android SDK中是否有类似的东西,但您要求使用Java:)

您考虑过使用堆栈吗?我不确定Android SDK中是否有类似的东西,但您要求使用Java:)

,尽管您可以使用for循环或使用
System.arraycopy(src,srcPos,dest,destPos,length)
调用我建议您使用一个可用的集合。更好的java.util.List。对于您的用例来说,LinkedList可能是最佳选择。

尽管您可以使用For循环或使用
系统实现此功能。arraycopy(src、srcPos、dest、destPos、length)
调用我建议您使用一个可用的集合。更好的java.util.List。对于您的用例,LinkedList可能是最好的选择。

您可以使用,每次需要观察最后插入的元素时都使用
Stack.peek()
您可以使用,每次需要观察最后插入的元素时都使用
Stack.peek()
在表示方面,这看起来更像是一个堆栈。这取决于你想对数据做什么,你也可以只使用一个普通的列表。我认为队列也可能是正确的方式,但我认为列表不能:)。堆栈的优点是,您可以设置最大大小,而不必关心从末尾弹出旧条目。您可以使用普通的list.add(…)方法插入新元素和list.get(list.size()-1)来获取最新的元素care out complexity。在堆栈中,返回最后插入的元素具有O(1)复杂性在表示方面,这更像是堆栈。这取决于您想对数据执行什么操作,您也可以使用普通列表。我认为队列可能也是正确的方法,但我不认为列表可以:)。堆栈的优点是,您可以设置最大大小,而不必关心从末尾弹出旧条目。您可以使用普通的list.add(…)方法插入新元素和list.get(list.size()-1)来获取最新的元素care out complexity。在堆栈中返回最后插入的元素具有O(1)复杂性通常Android使用与Java相同的类:哇,我不知道堆栈。我要去研究它们!(是的,你也可以在Android上使用堆栈:))通常Android使用与Java相同的类:哇,我不知道堆栈。我要去研究它们!(是的,你也可以在Android上使用堆栈:)使用更合适的数据结构。因为,正如我所设计的,我需要看到一个“时间进程”,我想比较一下样本。但我会考虑的。也许改变我的算法使其完全覆盖样本也能起作用。使用更合适的数据结构。因为,正如我设计的那样,我需要看到“时间进程”,我想比较样本。但我会考虑的。也许改变我的算法,让它完全覆盖样本也能起作用。