标签: arraylist

如何制作ArrayList的分离副本?

可能重复:
Java:如何克隆ArrayList但也克隆其项目?

我有一个示例程序,如下所示:

ArrayList<Invoice> orginalInvoice = new ArrayList<Invoice>();

//add some items into it here

ArrayList<Invoice> copiedInvoice = new ArrayList<Invoice>();

copiedInvoice.addAll(orginalInvoice);
Run Code Online (Sandbox Code Playgroud)


我以为我可以修改里面的物品copiedInvoice,它不会影响里面的这些物品originalInoice.但是我错了.

如何分离复制/克隆ArrayList?

谢谢

java clone arraylist

25
推荐指数
2
解决办法
7万
查看次数

对Java ArrayList的一部分进行排序

仅排序ArrayList的一部分的最有效方法是什么?在Arraylist中包含索引0到3的所有元素,其中包含10个元素.

Java中是否有可用的库函数?

除了Collections.sort(list)整个列表之外!

编写高度优化的自定义排序功能需要一些工作.

java sorting arraylist

25
推荐指数
2
解决办法
1万
查看次数

Java ArrayList的时间复杂度

我发现这个问题的其他条目涉及具体方法,但没有全面的.我想验证自己对这种数据结构中最常用的方法的理解:

O(1) - 恒定时间:

isEmpty()
add(x)
add(x, i)
set(x, i)
size()
get(i)
remove(i)
Run Code Online (Sandbox Code Playgroud)

O(N) - 线性时间:

indexof(x)
clear()
remove(x)
remove(i)
Run Code Online (Sandbox Code Playgroud)

它是否正确?谢谢你的帮助.

java arrays arraylist abstract-data-type data-structures

25
推荐指数
1
解决办法
5万
查看次数

什么时候绝对必要的通用数组 - 一个案例

这个Q是寻找一个绝对必要的泛型数组的示例.

泛型和数组"混合不好".

是否存在通用ArrayList不会执行的情况 - 通用数组没有替代品并且必须使用.

有效的Java为通用数组打开了一扇门,表示可能存在需要通用数组的情况.

我一直在使用ArrayList没有任何缺点,也不能想到这样的情况.

TIA.

注意:我见过这些:

以及其他一些讨论.

java arrays generics arraylist

25
推荐指数
2
解决办法
985
查看次数

如何从android中的firebase中检索List对象

我无法从Firebase中检索列表.我可以毫无困难地存储它,但是当我尝试将dataSnapshot.getValue()强制转换为ArrayList时,我的应用程序崩溃了,给出了异常:

HashMap无法转换为ArrayList

但是当我试图将它转换为HashMap时,它也会崩溃,给出异常:

ArrayList无法转换为hashmap

需要帮助!以下是创建问题的代码:

Fire.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        List<TaskDes> td = (ArrayList<TaskDes>) dataSnapshot.getValue()
        notifyDataSetChanged();
    }

    @Override
    public void onCancelled(FirebaseError firebaseError) {

    }
});
Run Code Online (Sandbox Code Playgroud)

firebase对象屏幕截图

我想将Firebase中的所有数据检索为一个列表.TaskDes类包含三个字段:

class TaskDes { // definition
    boolean done
    String taskDescription
    String taskTitle
}
Run Code Online (Sandbox Code Playgroud)

android arraylist firebase firebase-realtime-database

25
推荐指数
2
解决办法
3万
查看次数

为什么 java.util.ArrayList 包中的数据数组是私有的?

在java.util.ArrayList类中,列表元素的对象数组被定义为包私有:

transient Object[] elementData; // non-private to simplify nested class access
Run Code Online (Sandbox Code Playgroud)

评论指出,这个字段不是私有的原因是在嵌套类中更容易访问。但是,嵌套类可以很好地访问封闭类的私有数据。那么为什么elementData不是私有的呢?后台是否发生了某些事情(例如,在编译时)?

java visibility arraylist inner-classes

25
推荐指数
2
解决办法
608
查看次数

列表实现:LinkedList与ArrayList和TreeList相比是否真的表现不佳?

取自Apache TreeListdoc:

以下相对性能统计数据表示此类:

             get  add  insert  iterate  remove
 TreeList       3    5       1       2       1
 ArrayList      1    1      40       1      40
 LinkedList  5800    1     350       2     325
Run Code Online (Sandbox Code Playgroud)

它继续说:

LinkedList很少是一个很好的实施选择.TreeList它几乎总是一个很好的替代品,虽然它确实使用了更多的内存.

我的问题是:

  • 什么是与ArrayList add, insert和remove次粉碎 LinkedList?我们是否应该期望,真实世界的插入和移除案例非常有利ArrayList?

  • 这TreeList简直就是钉在古老的棺材里LinkedList吗?

我很想得出结论,他们已经摊销或忽略了ArrayList成长的痛苦,并没有考虑到LinkedList已经找到的物品的插入和移除时间.

java collections linked-list arraylist treelist

24
推荐指数
1
解决办法
9093
查看次数

修饰符静态仅在常量变量声明中允许

我有一个内部类存储我正在用于游戏的控件的信息,现在我想在其中存储一个包含所有控件名称的静态ArrayList.但我得到这个错误:"修饰符静态只允许在常量变量声明中"

private class Control{
    public ArrayList<String> keys = new ArrayList<String>();
    public final String key;
    public final Trigger trigger;
    Control(String k, Trigger t){
        key = k;
        trigger = t;

        keys.add(key);
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我知道这可以通过将ArrayList从类中取出并存储在主类中来轻松解决.但我更愿意将所有信息保存在一个可以访问所有内容的课程中.

"Control.key,Control.trigger,Control.keys" 比"键,触发器,键"更优雅/可读

或许我只是有强迫症,我仍然想按照自己的方式去做.

java static list arraylist

24
推荐指数
2
解决办法
3万
查看次数

新的ArrayList <int>()在Java中失败

我有以下代码:

List<int> intList = new ArrayList<int>();
for (int index = 0; index < ints.length; index++)
{
    intList.add(ints[index]);
}
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误......

Syntax error on token "int", Dimensions expected after this token
Run Code Online (Sandbox Code Playgroud)

错误发生在以List.开头的行上.有人能解释我收到错误的原因吗?

java generics list arraylist

24
推荐指数
2
解决办法
9万
查看次数

Spinner不显示选定的值

我已经通过数据库填充数组列表实现了微调器.我可以在我的微调器数组适配器中获取并显示数组列表但是如果我在微调器中选择它没有在微调器中显示?我在这里有什么错误?

这是我的代码,

 Spinner spinner1 = (Spinner) findViewById(R.id.prospin);
     ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, providerlist);

  adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(adapter1);
Run Code Online (Sandbox Code Playgroud)

我使用这个来获取所选的项目字符串,

Spinner provid = (Spinner)findViewById(R.id.prospin);
String provider =provid.getSelectedItem().toString();
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我!

android arraylist selected spinner

24
推荐指数
7
解决办法
4万
查看次数