为简单起见,假设我有一个包含A,B和C类型对象的ArrayList.如何只提取A类对象?
正如我的问题所说,我想将我的arraylist项插入到hashmap中.
这是我的HashMap.
HashMap<String, Integer> unSorted = new HashMap<String, Integer>();
Run Code Online (Sandbox Code Playgroud)
这是我的ArrayList.
arrayList.add("1");
arrayList.add("2");
Run Code Online (Sandbox Code Playgroud)
添加到Hashmap中.
unSorted.put(arrayList,50);
Run Code Online (Sandbox Code Playgroud)
我很确定我不能添加像这样的arraylist.我忘了我必须迭代arrayList并逐个插入值.
我怎么会出错?
感谢您的时间 !
我在本地机器上有MYSQL数据库,我正在运行java程序.
我计划创建一个特定表的所有条目的数组列表.从这一点来看,我不会访问数据库来获取表中的特定条目,而是使用创建的数组列表.与访问数据库以获取表中的特定条目相比,这会更快还是更慢?
请注意,我感兴趣的表有大约200万条目.
谢谢.
更多信息:我只需要两个字段.1个Long类型和1个String类型.表的索引是Long,而不是int.
我有两个arraylists,一个包含字符串,另一个包含具有String数据成员的类.目标是通过第二个arraylist中的对象进行递归,并找到哪个对象的字符串数据成员等于第一个arraylist中的字符串值.
现在我明白你不能使用==运算符来比较字符串,所以我最初使用了equals方法,现在我已经尝试了contentEquals方法,但无论我选择哪种方法,字符串总是被归类为相等 - 即使他们不是.因此,每当我运行下面的代码时,无论字符串是否实际相等,"if"语句在第一次调用时总是返回true.
Iterator stringListIter = stringList.iterator();
Iterator objectListIter = objectList.iterator();
while (stringListIter.hasNext())
{
String currentString = (String) stringListIter.next();
while (objectListIter.hasNext())
{
MyObject currentObject = (MyObject) objectListIter.next();
String objectString = currentObject.getString();
if (objectString.contentEquals(currentString));
{
//Do something here.....
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.我觉得它可能是相当简单的东西,但我只是看不到它.
我有一个叫做Paragens这样的课:
public class Paragens {
static int contadorParagens = 1;
String nomeParagem;
int id;
public Paragens(String nomeParagem) {
this.nomeParagem = nomeParagem;
this.id = contadorParagens++;
}
// getters and setters for nomeParagem
}
Run Code Online (Sandbox Code Playgroud)
每个Paragens对象都有一个名称和一个Id.
这个类有一个main方法,我创建几个Paragens对象并将它们存储在ArrayList中,如下所示:
public static void main(String[] args) {
ArrayList<Paragens> paragens = new ArrayList<Paragens>();
paragens.add(new Paragens("name1");
// ... add more paragens
}
Run Code Online (Sandbox Code Playgroud)
这工作正常.如果我插入一堆paragens并打印它们,我可以看到tat一切都好.
我想要做的是要求用户输入一个paragem名称然后我想看看该paragem是否已经在ArrayList中.
String name;
System.out.println("Insert paragem name: ");
pickName = sc.nextLine();
System.out.println(paragens.contains(pickName));
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我想在Python中创建一个多维数组,以便稍后解析它.我是PHP的转换器,所以我对如何创建一个字典或列表或其他任何东西来解决这个问题.有人有想法吗?
for group, value in data:
print '%s = %s' % (group, value)
for member, value in group:
print ' MEMBER: %s = %s' % (member, value)
>> 'Windows = 12%'
>> ' MEMBER: pc1 = 123'
>> ' MEMBER: pc2 = 321'
>> 'MacOS = 11%'
>> 'Linux = 13%'
>> ' MEMBER: pc3 = 213'
>> ' MEMBER: pc4 = 132'
>> ...
Run Code Online (Sandbox Code Playgroud) 我有一些ArrayList声明.其中一些是ArrayList<Integer>和其他人一样ArrayList<Double>.
我想从另一个类中获取它们,所以我写了一个方法:
private ArrayList<Double> list1, list2;
private ArrayList<Integer> list3;
public ArrayList getList(String nameOfList){
ArrayList myList = new ArrayList();
if(nameOfList.equals("list1")) myList = list1;
else if(nameOfList.equals("list2")) myList = list2;
else if(nameOfList.equals("list3")) myList = list3;
return myList;
}
Run Code Online (Sandbox Code Playgroud)
编译,但引发了一些警告:
*ArrayList is a raw type. References to generic type ArrayList<E> should be parameterized* in the method above, and *Type safety: The expression of type ArrayList needs unchecked conversion to conform to List<? extends Number>* when calling the method …Run Code Online (Sandbox Code Playgroud) 我有类的ArrayList Room这是在课堂上举行Hostel,我想此ArrayList写入一个文本文件中.这样做最有效的方法是什么?
宿舍楼
public class Hostel
{
private ArrayList < Room > rooms;
}
Run Code Online (Sandbox Code Playgroud)
房间等级
abstract class Room
{
public Room(int newRoomNo, boolean newRoomEnSuite, int newRoomNights, String newRoomBooker)
{
roomNo = newRoomNo;
roomEnSuite = newRoomEnSuite;
roomBooking = "Booked";
roomNights = newRoomNights;
roomBooker = newRoomBooker;
}
}
Run Code Online (Sandbox Code Playgroud) 给定3个变量(homeNumber,mobileNumber和workNumber),它们可以为null,但至少其中一个是String,我需要返回一个String数组,以便稍后在Android对话框中使用它.我这样做有麻烦.我尝试在ArrayList中执行它并删除所有null元素,这样就只有我想要的只有字符串的ArrayList,但是当我尝试将它更改为数组时,我在最后一行得到一个ClassCast异常.
ArrayList numberList = new ArrayList();
numberList.add(homeNumber);
numberList.add(mobileNumber);
numberList.add(workNumber);
numberList.removeAll(Collections.singleton(null));
final String[] items= (String[]) numberList.toArray();
Run Code Online (Sandbox Code Playgroud)
任何想法如何解决这一问题?
因此,每次运行方法测试时,我的String数组都会添加到我的ArrayList中,它会打印出lyricLineInfo [4]值,但是当再次运行方法测试时,数组将被添加到ArrayList,但它也将替换具有新数组的所有其他ArrayList值.因此,当再次打印lyricLineInfo [4]时,它会打印新值,而不是像它想象的那样打印旧值.我不确定为什么这样做可以让任何人帮忙?这是我的代码:
private String[] lyricLineInfo = new String[5];
private ArrayList<String[]> lyricLineNumber = new ArrayList<String[]>();
public void test() {
lyricLineNumber.add(getInfo());
System.out.println(lyricLineNumber.get(0)[4])
}
public String[] getInfo() {
if (chckbxLeadSinger.isSelected()) {
lyricLineInfo[0] = "true";
} else {
lyricLineInfo[0] = "false";
}
if (chckbxBackupSinger.isSelected()) {
lyricLineInfo[1] = "true";
} else {
lyricLineInfo[1] = "false";
}
lyricLineInfo[2] = fieldStartTime.getText();
lyricLineInfo[3] = fieldEndTime.getText();
lyricLineInfo[4] = fieldLyrics.getText();
return lyricLineInfo;
}
Run Code Online (Sandbox Code Playgroud)