Java Android HashMap提取不同的对象
我有一个方法(如下所示),它接受一个HashMap以插入到数据库中。HashMap中的对象是字符串、int和double的混合体。我真的不在乎它们是否都作为字符串进入数据库,因为它们的工作已经完成了 下面的代码根本不起作用。当它到达第一个int时,我会得到一个NullPointerException。我给出所有空int并将值加倍为0,这样它们就不是null,但是当它到达System.out.println方法时,它会抛出异常。我可能错过了什么,你的帮助会很好Java Android HashMap提取不同的对象,java,android,object,hashmap,Java,Android,Object,Hashmap,我有一个方法(如下所示),它接受一个HashMap以插入到数据库中。HashMap中的对象是字符串、int和double的混合体。我真的不在乎它们是否都作为字符串进入数据库,因为它们的工作已经完成了 下面的代码根本不起作用。当它到达第一个int时,我会得到一个NullPointerException。我给出所有空int并将值加倍为0,这样它们就不是null,但是当它到达System.out.println方法时,它会抛出异常。我可能错过了什么,你的帮助会很好 public void insert
public void insertQueTicket (HashMap<String, Object> queryValues) {
SQLiteDatabase db = getWritableDatabase();
ContentValues contentValues = new ContentValues();
for (Map.Entry<String, Object> entry : queryValues.entrySet()) {
String column = entry.getKey();
Object value = entry.getValue().toString();
//contentValues.put(column, value);
System.out.println(value);
}
//db.insert(QUETICKETS_TABLE_NAME, null, contentValues);
db.close();
}
我想这是我转换int、double等项的方式。queryValues Hashmap中的每一行项都是,如果这样做的话。每个变量以前都已从EditText字段转换为int、double或String
我想我可能会对int与Integer以及double与double产生混淆?“当它到达第一个int时,我会得到一个NullPointerException”看起来您试图在HashMap中插入int基元类型。在将它们插入HashMap之前,应该将它们转换为整数或字符串对象。简言之,错误在别处 伙计们,对不起,是我的错。你是对的,错误来自其他地方。我初始化变量时出错了 你不能这样做:
int one, two, three = 0;
你必须说:
int one = 0, two = 0, three = 0;
所有的东西都返回空值,除了最后的变量,它们是唯一被赋值的变量
再次感谢您的帮助和快速响应。您的打印代码工作正常,没有任何错误。将需要日志猫。
int one = 0, two = 0, three = 0;