标签: arraylist

性能中的数组与ArrayList

哪一个在Object类型的Array和Object类型的ArrayList之间的性能更好?

假设我们有一个Animal对象数组:Animal animal[] 和一个arraylist:ArrayList list<Animal>

现在我在做什么 animal[10] , list.get(10) 哪一个应该更快,为什么?

java arrays collections performance arraylist

57
推荐指数
5
解决办法
11万
查看次数

如何在不使用foreach的情况下将ArrayList转换为强类型通用列表?

请参阅下面的代码示例.我需要ArrayList一个通用列表.我不想用foreach.

ArrayList arrayList = GetArrayListOfInts();  
List<int> intList = new List<int>();  

//Can this foreach be condensed into one line?  
foreach (int number in arrayList)  
{  
    intList.Add(number);  
}  
return intList;    
Run Code Online (Sandbox Code Playgroud)

.net c# list arraylist generic-list

56
推荐指数
2
解决办法
5万
查看次数

列表最多能容纳多少数据?

Java中的java.util.List中最多可以添加多少数据?

是否有ArrayList的默认大小?

java size arraylist

56
推荐指数
5
解决办法
11万
查看次数

为什么Java的ArrayList的删除功能似乎花费这么少?

我有一个操作非常大的列表的功能,超过大约250,000个项目.对于大多数这些项目,它只是替换位置x处的项目.但是,对于它们中的大约5%,它必须从列表中删除它们.

使用LinkedList似乎是避免昂贵删除的最明显的解决方案.然而,自然地,随着时间的推移,通过索引访问LinkedList变得越来越慢.这里的成本是几分钟(其中很多).

在LinkedList上使用Iterator也很昂贵,因为我似乎需要一个单独的副本来避免在编辑该列表时出现Iterator并发问题.这里的费用是几分钟.

然而,这是我的思绪被吹嘘的地方.如果我更改为ArrayList,它几乎立即运行.

对于包含297515个元素的列表,删除11958个元素并修改其他所有元素需要909ms.我确认结果列表的大小确实是285557,如预期的那样,并包含我需要的更新信息.

为什么这么快?我查看了JDK6中ArrayList的源代码,它似乎正在按预期使用arraycopy函数.我很想理解为什么ArrayList在这里工作得很好,当常识似乎表明这个任务的数组是一个可怕的想法,需要移动几十万个项目.

java optimization performance arraylist

56
推荐指数
5
解决办法
2万
查看次数

直接将List <String>转换为List <Integer>

解析后我的文件"s"包含 AttributeGet:1,16,10106,10111

所以我需要在attributeIDGet List中获取冒号后面的所有数字.我知道有几种方法可以做到这一点.但是我们有什么方法可以直接转换List<String>List<Integer>. 由于下面的代码抱怨类型不匹配,所以我尝试做Integer.parseInt,但我想这对List不起作用.这是s字符串.

private static List<Integer> attributeIDGet = new ArrayList<Integer>();

if(s.contains("AttributeGet:")) {
    attributeIDGet = Arrays.asList(s.split(":")[1].split(","));
}
Run Code Online (Sandbox Code Playgroud)

java collections list arraylist

54
推荐指数
7
解决办法
10万
查看次数

如何在ArrayList中找到最小值以及索引号?(JAVA)

我需要在Java中的arraylist中获取最小值的索引值.我的arraylist持有几个浮点数,我试图想出一种方法,我可以获得最小浮点数的索引号,这样我就可以在我的代码中的其他位置使用该索引号.我是初学者,所以请不要恨我.谢谢!

java arraylist

54
推荐指数
4
解决办法
16万
查看次数

如何动态添加元素到String数组?

现在我有一个字符串数组__CODE__.

我想在for循环中向this数组添加元素.但我没有办法.我是Java和android的新手.

java arrays string arraylist

53
推荐指数
2
解决办法
29万
查看次数

如何将数组列表中的特定项目移动到第一个项目

例如:一个列表

ABCDE

给定C,切换到

CABDE

请注意,数组大小将更改,某些项可能会在运行时删除

Collections.swap(url, url.indexOf(itemToMove), 0);
Run Code Online (Sandbox Code Playgroud)

这句话不起作用,因为它输出的是CBADE而不是CABDE,如何修复呢?

谢谢.

java collections android swap arraylist

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

无法从VALUE_STRING中反序列化java.util.ArrayList的实例

我有一个使用Jersey构建的REST服务,并部署在AppEngine中.REST服务实现使用application/json媒体类型的动词PUT.数据绑定由Jackson执行.

动词使用JSON表示的企业部门关系

{"name":"myEnterprise", "departments":["HR","IT","SC"]}
Run Code Online (Sandbox Code Playgroud)

在客户端,我使用gson将JSON表示转换为java对象.然后,我将对象传递给我的REST服务,它工作正常.

问题:

当我的JSON表示在集合中只有一个项目时

{"name":"myEnterprise", "departments":["HR"]}
Run Code Online (Sandbox Code Playgroud)

该服务无法反序列化该对象.

ATTENTION: /enterprise/enterprise: org.codehaus.jackson.map.JsonMappingException: 
Can not deserialize instance of java.util.ArrayList out of VALUE_STRING token at 
[Source: org.mortbay.jetty.HttpParser$Input@5a9c5842; line: 1, column: 2
Run Code Online (Sandbox Code Playgroud)

正如其他用户所报告的那样,解决方案是添加标志ACCEPT_SINGLE_VALUE_AS_ARRAY(例如,Jersey:无法从String中反序列化ArrayList的实例).然而,我并不是在控制ObjectMapper,因为在服务方面它是由Jackson透明地制作的.

题:

有没有办法在服务端配置ObjectMapper以启用ACCEPT_SINGLE_VALUE_AS_ARRAY?注释?web.xml中?

代码细节

Java对象:

@XmlRootElement
public class Enterprise {
    private String name;
    private List<String> departments;

    public Enterprise() {}

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public List<String> getDepartments() {
        return departments;
    }
    public void setDepartments(List<String> departments) {
        this.departments …
Run Code Online (Sandbox Code Playgroud)

java json arraylist jackson json-deserialization

52
推荐指数
5
解决办法
15万
查看次数

将Strings.xml中的String-Array更改为ArrayList

我正在开发一款Android应用.我需要将字符串数组转换为ArrayList.我已经读过这篇文章了,所有的情况都是你在java文件中将值添加到数组中的情况.我在strings.xml文件中声明了string-array.我的字符串数组在这里:

<string-array name="Lines">
    <item>Red Line</item>
    <item>Blue Line</item>
    <item>Orange Line</item>
    <item>Green Line</item>
    <item>Brown Line</item>
    <item>Purple Line</item>
    <item>Pink Line</item>
    <item>Yellow Line</item>
</string-array>
Run Code Online (Sandbox Code Playgroud)

我需要将Lines转换为ArrayList.如果我用这个

List<String> Lines = new ArrayList<String>();
Run Code Online (Sandbox Code Playgroud)

声明ArrayList,如何通过ID查找数组列表,并将其存储为Lines?

java arrays string android arraylist

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