Здравствуйте.
При вызове (int) (System.currentTimeMillis());
напрямую из цикла - при каждой итерации получается новое значение, но при вызове этой же функции в классе, вызванном этим же циклом - значение не меняется:
private static void updateGame () {
GameTime Time = new GameTime (null);
while (true) {
Time = new GameTime (Time);
if (Time != null) {
System.out.println (Time.hours + ":" + Time.minutes);
}
}
}
import java.util.Date;
public class GameTime {
Settings settings = new Settings ();
int gameSpeed = settings.gameSpeed ();
static int hours, minutes;
static int timestamp = (int) (System.currentTimeMillis());
public static int hours () {
return hours;
}
public static int minutes () {
return minutes;
}
public static int timestamp () {
return timestamp;
}
GameTime(GameTime Time) {
System.out.println (Time.timestamp + "; " + timestamp);
if (Time == null) {
this.hours = 06;
this.minutes = 00;
} else {
if (Time.timestamp + gameSpeed >= timestamp) {
this.minutes += 1;
}
if (this.minutes >= 60) {
this.minutes = 00;
this.hours += 1;
}
if (this.hours >= 24) {
this.hours = 00;
}
}
}
}
Вопрос: как сделать так, чтоб при каждой итерации цикла метод GameTime.timestamp ()
принимал новое значение?
Уберите модификатор static
у поля timestamp
, а то оно у вас одно на все классы и инициализируется в момент объявление класса, а не создания экземпляра.
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Я знаю php, мой друг изучает java, мы хотели бы сделать общение между php и java, но не знаем как, хотелось бы передавать переменные, массивы, чтобы...
Есть база данных и много Фрагментов и Активностей, где ее нужно использоватьМожно ли отдельно создать или интерфейс или класс, где заранее...
Я верстаю e-mail рассылку для gmailИ весь текст в теге strong фиолетового цвета, как у посещенной ссылке