1

これは比較的簡単なはずですが、これに関するヘルプを検索するたびに、SQL 情報に圧倒されます。

基本的に 3 つのクラスがあり、それぞれが数値を生成し、最後に合計数を取得したいと考えています。SQLite データベースを生成せずに 3 つのクラスすべてが追加できる変数を作成する方法はありますか?

  • Page1.java は 5 を作成します -> 合計に追加します

  • Page2.java は 12 を作成します -> 合計に追加します

  • Page3.java は 10 を作成します -> 合計に追加します

  • Page4.java の総開封数

私が言ったように、おそらく単純な問題ですが、SQLite が私の検索を支配しています。

よろしくお願いします。

4

3 に答える 3

2

そのために静的変数を使用できます。カプセル化を気にしない場合は、この目的のために 1 つの public static 変数を使用することもできます。

例:

private static int mCounter = 0;

public static void addToCounter(int i)
{
    mCounter += i;
}

public static int getCount()
{
    return mCounter;
}
于 2012-05-07T12:29:40.123 に答える
0

あなたができることは、たとえば、private int count各クラスとそれぞれのゲッターにプライベートな値を持つことです。次に、各クラスにメソッドもあります。たとえば、public void doSomething(){... count = ...}.

これらがすべて揃ったら、次のPage4ようなことができます。

public class Page4 { Page1 pg1 = new Page1(); Page2 pg2 = 新しい Page2(); Page3 pg3 = 新しい Page3();

 pg1.doSomething();
 pg2.doSomething();
 pg3.doSomething();

 int total = pg1.getCount() + pg2.getCount() + pg3.getCount();

}

一方、変更されて次のクラスに渡されるクラスに整数変数を渡すことができます。

実際のカウンターを含むクラスへの参照を渡すこともできます。各クラス ( Page1Page2...) が必要なことを完了すると、そのクラスを参照して値自体を更新するだけです。

于 2012-05-07T12:34:49.967 に答える
0

クラスをどのように呼び出すかは明確ではありません。

ただし、単純なクラスが 3 つしかなく、クラスを呼び出す場所が 1 つしかない場合は、クラス間で変数を渡し、それに値を追加することができます。

public class Page1 {

  public void addToVariable(int var) {
    var = var + 5;
  }
}

public class Page2 {

  public void addToVariable(int var) {
    var = var + 12;
  }
}
...

次に、変数を使用してクラス メソッドを呼び出します。

int yourVariable = 0;
Page1 p1 = new Page1();
Page2 p2 = new Page2();

p1.addToVariable(yourVariable);
p2.addToVariable(yourVariable);

yourVariableあなたが探している合計を保持します。

于 2012-05-07T12:39:08.697 に答える