Tag: arraylist

为什么hashmap没有像ArrayList那样的ensureCapacity()方法?

ArrayList和HashMap都有构造函数来设置初始容量, ArrayList提供了ensureCapacity()以确保在预期插入一些大量元素时内部数组已经增加。 在某些情况下, HashMap也会发生同样的情况。 那么为什么HashMap没有一个确保容量方法可以保持桶准备好呢?

Java – 如何从数组中获取项目索引及其值?

如果我有一个数组列表说一个字符串数组,那我怎样才能得到一个元素的索引及其值? 代码测试: private static final String[] TEST = new String[]{ “abc”,”bcd”,”def” } 要求其索引类似于: int i = TEST.getPosition(“abc”);/TEST.indexof(…);//not available 我也尝试创建ArrayAdapter。 有这样的吗? 或者我可能需要使用该适配器或其他东西分配它? 要么, 我怎样才能获得元素的索引?

通过java从mysql的数据创建json对象

从mysql获取数据后,我需要将数据导出为JSON,格式如下: {“Thong tin”:[{“Ngay”:”2013-06-18″,”Tinh”:”An Giang”},{“Ngay”:”2013-06-17″,”Tinh”:”Bình Dương”},{“Ngay”:”2013-06-16″,”Tinh”:”Bạc Liêu”}]} 但是,我得到了,就像 {“Thong tin”:[{“Ngay”:”2013-06-16″,”Tinh”:”Bạc Liêu”},{“Ngay”:”2013-06-16″,”Tinh”:”Bạc Liêu”},{“Ngay”:”2013-06-16″,”Tinh”:”Bạc Liêu”}]} 你能帮我解决这个错误吗? 我的代码: acc = new access(); rs2 = acc.query(“select province_Name, date_Expired from thong_tin_khach_hang”); List province_Name = new ArrayList(); List date_Expired = new ArrayList(); try { while (rs2.next()) { province_Name.add(rs2.getString(1)); date_Expired.add(rs2.getString(2)); } } catch (SQLException e) { try { acc.con.close(); } catch (SQLException e1) […]

Prim用于生成迷宫的算法:获取相邻小区

我正在基于Prim算法的迷宫生成器程序: 该算法是Prim算法的随机版本。 从充满墙壁的网格开始。 选择一个单元格,将其标记为迷宫的一部分。 将单元格的墙添加到墙列表中。 虽然列表中有墙: 从列表中选择一个随机墙。 如果对面的细胞尚未进入迷宫: 使墙成为通道,并将对面的细胞标记为迷宫的一部分。 将单元格的相邻墙添加到墙列表中。 如果对面的单元格已经在迷宫中,请从列表中移除墙壁。 (来自维基百科 ) 我已经理解了算法,我只是坚持这一部分:“知道相邻小区是否构成了迷宫的一部分”(这意味着,首先获取相邻小区)因为小区实际上是树的节点(迷宫,一个二维细胞arrays),墙壁是这些节点之间的边缘,我认为有必要用一对点(x,y)识别每个墙壁。 我怎么知道两个单元是否通过墙连接? (记住每个单元有4面墙) 我想过使用equals()函数。 我只是要求伪代码或你的最佳解释,这将使事情变得更容易。 My Wall类有三个属性:bool isWall(确定它是墙还是单元格之间的通道); int x; int y(标识符)。 如果您认为我需要更多属性,我将很高兴知道。 我知道有一个简单的方法,我只是卡住了;)谢谢你的时间!

JNI – java ArrayList转换为c ++ std :: string *

我试图用C ++中的JNI进行数据转换。 我在使用java的字符串 ArrayList时遇到了麻烦,因为我无法将这样的数据转换为c ++ 向量或std :: string * 。 我想知道如果可能的话,如何在不牺牲太多性能的情况下进行转换。 任何想法,将不胜感激。

二维arraylist的排列

我正在尝试制作一个二维数组列表,其中包含递归的每个可能的组合,例如1,2,3,4。 没有双倍的上升。 例如。 1,0,0 2,0,0 3,0,0 4,0,0 1,2,0 1,3,0 1,4,0 1,2,3 等等… 到目前为止我有 //this gives me all my numbers for(int i =0;i<arraySize;i++) index[i] = i; // and is the part that make the combinations for(int i = 0;i<arraySize;i++){ for(int x = 0;x<k;x++) combinations.get(i).set(x, index[i]); 编辑:另外我不打算打印结果我想将结果存储在二维数组中

JAXB可以生成ArrayList而不是List吗?

JAXB以List<JAXBElement>生成属性。 有没有什么方法可以生成ArrayList?

有没有更有效的方法在for循环中创建新变量?

如果你有一个ArrayList(在这种情况下命名为al ),并且你想要将列表的前五个元素作为变量,你可以这样做: String x1 = al.get(0); String x2 = al.get(1); String x3 = al.get(2); String x4 = al.get(3); String x5 = al.get(4); 但是,使用for循环,有没有办法可以做这样的事情: for (int i = 1; i < 6; i++){ String namer = "x" + i.toString(); String [value of String 'namer'] = al.get(i-1); } 或者是否有一种完全不同的方法更有效?

避免在ArrayList中覆盖对象

堆垛机。 我一直在网站上搜索我的问题,但没找到我要找的东西。 我坚持使用这段代码: public class Users{ ArrayList personer = new ArrayList(); ValidateUser newUser = new ValidateUser(); newUser.setUser(“administrator”); newUser.setPass(“asdf123”); newUser.setBalance(0.8); newUser.setType(“admin”); personer.add(newUser); 有一个很好的数组列表,但如果我向ArrayList添加更多“newUsers”,它们似乎互相覆盖。 我不想创建一个newUser1,newUser2对象,因为稍后在我的程序中,我必须能够直接从程序中添加新用户。 怎么做到这一点? 的ValidateUser: public class ValidateUser { private String username; private String password; private double balance; private String role; public void setUser(String user) { username = user; } public void setPass(String pass) { […]

ArrayList.add(int index,E element)线程不安全吗?

我之前的问题让我想到了这个问题。 添加 ArrayList线程的function安全吗? 我用以下类创建了一个示例应用程序 import java.util.ArrayList; import java.util.List; public class ThreadTest { public static List list = null; public static boolean isLoaded = false; public static void main(String [] args) { MyThread t1 = new MyThread(1); MyThread t2 = new MyThread(2); t1.start(); t2.start(); } public static void loadObject(){ if(isLoaded){ return; } isLoaded = false; try{ […]