com.yahoo.lang.MutableInteger Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of vespajlib Show documentation
Show all versions of vespajlib Show documentation
Library for use in Java components of Vespa. Shared code which do
not fit anywhere else.
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.lang;
/**
* A mutable integer
*
* @author bratseth
*/
public class MutableInteger {
private int value;
public MutableInteger(int value) {
this.value = value;
}
public int get() { return value; }
public void set(int value) { this.value = value; }
/** Adds the increment to the current value and returns the resulting value */
public int add(int increment) {
value += increment;
return value;
}
/** Increments the value by 1 and returns the value of this *before* incrementing */
public int next() {
value++;
return value - 1;
}
/** Adds the increment to the current value and returns the resulting value */
public int subtract(int increment) {
value -= increment;
return value;
}
@Override
public String toString() { return Integer.toString(value); }
}