Мне очень жаль, если я задам глупый вопрос здесь, но я действительно понятия не имею, чтобы решить :(Попадая неправильно общее количество часов
В моем приложении, я хочу, чтобы вычислить общее количество часов, и, наконец, показать на textView
. Я установил различные условия в случае, если время начала больше чем конечное время.
int a = SplitTime(objMyCustomBaseAdapter.getFistTime());
int b = SplitTime(objMyCustomBaseAdapter.getLastTime());
long difference = 0;
if (a > b)
{
difference = b + 24 - a;
Log.e("Tag",difference+"");
int minutes = (int) ((difference/(1000 * 60)) % 60);
int hours = (int) ((difference/(1000 * 60 * 60)) % 24);
totalHours.setText((hours + ":" + minutes));
}
else
{
difference=b-a;
int minutes = (int) ((difference/(1000 * 60)) % 60);
int hours = (int) ((difference/(1000 * 60 * 60)) % 24);
totalHours.setText((hours + ":" + minutes));
}
public static int SplitTime(String time) {
try {
String[] altSplitTime = time.split(":", 3);
return Integer.valueOf(altSplitTime[1].trim()) * 60 + Integer.valueOf(altSplitTime[2].trim());
}
catch (Exception ex)
{
return 0;
}
}
Пусть int a
держит 550
, b
держит 71
, и разница имеет 503
. После этого я хочу, чтобы преобразовать его в hours
и minutes
, наконец, отобразится на textView. Но я получаю 0:0
на textView.
Что здесь не так? Я ошибался? Может ли кто-нибудь дать мне предложения о том, как это решить? Оценил.
Спасибо .. это значение отображения на textView сейчас. Могу ли я спросить вас о чем-то, что не связано с программированием? Если 'time in' равно 9 утрам, и он работает до 1 утра, правильно ли предоставлен мой формат? –
Я не понимаю правильно, вы хотите рассчитать, сколько часов он на работе? –
Yup. Предположим, что он работает с 9 утра до 1 часа ночи, какой формат я должен написать? Если он работает с 9 утра до 6 вечера, не будет никаких проблем, поскольку я могу получить от b-a –