このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

サンプルはカウンタ -- Java版

前のエントリJavaScriptサンプルに対応するJavaコードです。


/* Counter.java */

public class Counter {
public static final int UPPER_BOUND = 10;
public static final int MAX_COUNTERS = 3;
public static int counters = 0;

public int value;

public Counter(int initValue) {
if (counters >= MAX_COUNTERS) {
throw new RuntimeException("too many counters.");
}
if (0 <= initValue && initValue < UPPER_BOUND) {
value = initValue;
} else {
throw new RuntimeException("Illegal initial value:" + initValue);
}
counters++;
}
public Counter() {
this(0);
}

public void inc() {
if (value + 1 >= UPPER_BOUND) {
throw new RuntimeException("counter overflow.");
}
value++;
}
public void dec() {
if (value <= 0) {
throw new RuntimeException("counter underflow.");
}
value--;
}
}