Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android二维数组和arraylist最佳实践?_Java_Android_Arrays_Arraylist - Fatal编程技术网

Java Android二维数组和arraylist最佳实践?

Java Android二维数组和arraylist最佳实践?,java,android,arrays,arraylist,Java,Android,Arrays,Arraylist,我想知道是否有人能回答我的一个相当愚蠢的问题,即编程时使用哪种练习更好 我知道要制作二维数组,我可以使用: ArrayList<ArrayList<String>> myArray = new ArrayList<ArrayList<String>>(); 以显示的方式使用ArrayList完全可以。但是,只有在运行时确实需要阵列增长和收缩时才使用阵列列表。如果您不确定是否需要增加或缩小阵列,请继续使用ArrayList开始。如果不需要数组是动态

我想知道是否有人能回答我的一个相当愚蠢的问题,即编程时使用哪种练习更好

我知道要制作二维数组,我可以使用:

ArrayList<ArrayList<String>> myArray = new ArrayList<ArrayList<String>>();

以显示的方式使用ArrayList完全可以。但是,只有在运行时确实需要阵列增长和收缩时才使用阵列列表。如果您不确定是否需要增加或缩小阵列,请继续使用ArrayList开始。如果不需要数组是动态的,则应使用字符串[]。字符串[][]在分配后无法增大或缩小大小

如果您的应用程序是性能密集型的,我强烈建议您尝试编写应用程序,以便使用字符串[][]。更重要的是,尽量避免大量的字符串操作,因为这将导致大量的分配(以及垃圾收集)。如果可以改用CharBuffer[]],则可以避免对象分配。不过,如果您正在编写一个简单的应用程序,并且应用程序分配的内容(从而最终导致垃圾收集)并不重要,那么使用ArrayList会使事情更容易处理

既然你认为自己是NoOB,你可能只想从ARARYLIST开始,因为处理起来有点容易。


此外,这不是一个真正的Android问题,更像是一个Java问题。

由于列表的大小会增加,如果您不确定二维数据结构有多大,它们是最佳解决方案。如果你知道结构有多大,那么就用普通数组代替,这样列表对象会造成的小开销就不会成为问题。

干杯,安迪,根据你的解释,我可能不得不使用ArrayList方法。基本上,这个应用程序是一个rss提要阅读器,但我将rss提要列表保存到一个文本文件中,并将其内容加载到一个全局数组中,应该允许用户从列表中添加和删除项目。我仍然不确定这是否是最好的方法,因为当我试图从文本文件中删除特定的rss源时,可能会遇到问题!e、 当有5个注册用户时,第一个rss提要。
String[][] myArray2;