数组没有正确初始化。 BasicDBObject无法创建BasicDBObject类型的数组

时间:2016-09-18 17:38:39

标签: java arrays mongodb

case 3:
    BasicDBObject []document= new BasicDBObject(); // error             
    DBCollection table1 = db.getCollection("user");
    document[0].put("name", "mkyong");
    document[0].put("age", 30);
    table1.insert(document);
    System.out.println("Collection Inserted successfully");
    break;

不了解初始化的问题。

3 个答案:

答案 0 :(得分:1)

你会得到编译时错误,因为数组初始化不正确。

BasicDBObject []document= new BasicDBObject(); //error

java中的基本数组初始化如下所示

Object objectArr[] = new Object[10];

所以你必须初始化数组并以下面的方式传递值。

BasicDBObject []document1= new BasicDBObject[2];

document1[0] = new BasicDBObject();
document1[0].put("name", "mkyong12");
document1[0].put("age", 30);

document1[1] = new BasicDBObject();
document1[1].put("name", "test12");
document1[1].put("age", 44);

您必须确保每个数组对象都应该初始化,否则您将失败并显示NullPointerException

希望这会有所帮助。

答案 1 :(得分:0)

insert方法采用DBObject。

BasicDBObject document= new BasicDBObject();
document.put("name", "mkyong");
document.put("age", 30);
table1.insert(document);

答案 2 :(得分:0)

您可以使用BasicDBList

BasicDBObject document = new BasicDBObject();
document.put("name", "mkyong");
document.put("age", 30);

BasicDBList documentList = new BasicDBList();
documentList.add(document);

DBCollection table1 = db.getCollection("user");
table1.insert(documentList.get(0));
System.out.println("Collection Inserted successfully");