0

私はsq-lite dbにデータを挿入する方法を持っています

 public long InsertDetails(int Id,String BatchName,double Weight,
        double Yield)
{
    ContentValues InsertContentValues = AssesmentInsertValues(Id,BatchName,Weight,Yield);
    return this.data.insert("tb_LabAssessment", null, InsertContentValues);
}

私のメインクラスから値をパラメーターとして上記の関数に渡します。場合によっては、重みと収量をnull値として渡したいと思います。

String batchname;
double weight;
double Yield;
dbAdapter.InsertAssesmentDetails(objClsProduct.getId(),batchname,weight,Yield)

ここで weight と yield の値を null として渡すにはどうすればよいですか。

4

4 に答える 4

6

プリミティブを null として渡すことはできません。これを行うには 2 つの方法があります。1 つ目は、関数が Double を取ることです。これは double のクラス バージョンです。もう 1 つは、-1 などの未使用の値を渡して null を意味することです。ただし、妥当なデフォルト値が必要です。

于 2013-05-13T04:58:38.510 に答える
2

メソッドを次のように変更します。

public long InsertDetails(int Id, String BatchName, Double Weight, Double Yield)

参照型なので、どこにDouble保持できますか。null

于 2013-05-13T04:58:41.550 に答える