Обработка и хранение прошедшего времени

Исключение нулевого указателя - это индикатор того, что вы используете объект, не инициализируя его.

Например, ниже - класс ученика, который будет использовать его в нашем коде.

public class Student {

    private int id;

    public int getId() {
        return this.id;
    }

    public setId(int newId) {
        this.id = newId;
    }
}

Приведенный ниже код дает вам исключение с нулевым указателем.

public class School {

    Student obj_Student;

    public School() {
        try {
            obj_Student.getId();
        }
        catch(Exception e) {
            System.out.println("Null Pointer ");
        }
    }
}

Поскольку вы используете Obj_Student, но вы забыли инициализировать его, как в правильном коде, показанном ниже:

public class School {

    Student obj_Student;

    public School() {
        try {
            obj_Student = new Student();
            obj_Student.setId(12);
            obj_Student.getId();
        }
        catch(Exception e) {
            System.out.println("Null Pointer ");
        }
    }
}
6
задан Bill the Lizard 17 September 2008 в 16:59
поделиться

8 ответов

TimeSpan имеет свойство Int64 Ticks, которое можно сохранить вместо этого, и конструктор, который принимает значение Галочек.

8
ответ дан 8 December 2019 в 17:31
поделиться

Большинство баз данных имеет своего рода тип временного интервала. Ответ зависит, на которой базе данных Вы говорите о. Для Oracle это - просто число с плавающей точкой, которое представляет количество дней (включая дробные дни). Можно добавить/вычесть, что к/от любому типу ДАТЫ и Вы получаете правильный ответ.

0
ответ дан 8 December 2019 в 17:31
поделиться

В течение многих периодов меньше чем день просто используйте секунды, как другой сказали.

В течение более длительных периодов это зависит от Вашего механизма дб. Если SQL Server, до версии 2008 Вы хотите дату и время. Это хорошо - можно просто проигнорировать значение по умолчанию 01.01.1900 дата, которую они будут все иметь. Если Вам достаточно повезло иметь SQL-сервер 2008, то существуют отдельные типы данных Даты и времени, которые можно использовать. Преимуществом с использованием реального типа даты и времени/времени является использование функции DateDiff для сравнения продолжительностей.

3
ответ дан 8 December 2019 в 17:31
поделиться

Как целочисленное количество секунд (или Миллисекунды как соответствующие)

0
ответ дан 8 December 2019 в 17:31
поделиться

Вы собираете обоих время остановки и время начала? Если так, Вы могли использовать тип данных "метки времени", если Ваши поддержки DBMS это. В противном случае так же, как тип даты/времени. Теперь, Вы сказали, что не хотите, чтобы часть даты была сохранена - но рассматриваете случай, где период времени охватывает полночь - Вы запускаете в 23:55:01 и заканчиваетесь в 0:05:14, например - если у Вас также нет даты там. Существует стандартная сборка в функциях для возврата прошедшего времени (в секундах) между двумя значениями даты и времени.

0
ответ дан 8 December 2019 в 17:31
поделиться

Я думаю, что самое простое должно просто преобразовать ввод данных пользователем в целое число секунд. Так 54:12 == 3 252 секунды, так сохраните 3252 в своей базе данных или везде, где. Затем, когда необходимо отобразить его пользователю, можно преобразовать его назад снова.

3
ответ дан 8 December 2019 в 17:31
поделиться

и международный тип должен сделать это, храня его как секунды и анализируя его назад и вперед

http://msdn.microsoft.com/en-us/library/ms187745.aspx

0
ответ дан 8 December 2019 в 17:31
поделиться

Пойдите с целыми числами в течение многих секунд или минут. Секунды, вероятно, лучше. Вы никогда не будете ударять себя для выбора чего-то со слишком большой точностью. Кроме того, для Вашего UI рассмотрите использование нескольких вводов текста, которые Вы не должны волновать по поводу пользователя, на самом деле вводящего ":" правильно. Также намного легче добавить другие ограничения, такие как минута и второй подсчет значений, содержащий 0-59.

0
ответ дан 8 December 2019 в 17:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: