Как сгруппировать час с соответствующими минутами в Android?

Я делаю заявку на поезд. В приложении я сохраняю время поезда. Из моей базы данных я могу получить список раз в виде массива строк, как это

   train_schedule_time------>[8.2, 13.55, 0.45]

Теперь я хочу разделить мой массив по часам с соответствующими минутами, как это...

Я использую StringTokenizer и разделить на массив часов и минут. Но я не могу сгруппировать свой час с несколькими минутами, и я должен показать в виде списка. Как я могу это сделать? Кто-нибудь может мне помочь? Заранее спасибо

2 ответа

Вы можете разделить свою строку. Например:

String train_schedule_tim = "8.2, 13.55, 0.45";

String[] hours = train_schedule_tim.split(", ");

String hour1 = hours[0].split(".")[0];
String mins1 = hours[0].split(".")[1];

String hour2 = hours[1].split(".")[0];
String mins2 = hours[1].split(".")[1];

Если вы хотите сохранить один час на несколько минут, вы можете сделать что-то вроде этого (использование Integer или String - то, что вы предпочитаете):

Map<Integer, List<Integer>> hours = new HashMap<Integer, List<Integer>>();

List<Integer> minutes = new ArrayList<Integer>();
minutes.add(15);
minutes.add(30);
minutes.add(45);

hours.put(8, minutes);

Затем вы можете сделать:

for (Integer h : hours.keySet()) {
    List<Integer> mins = hours.get(h);
}

Например, вы можете использовать StringTokenizer класс (от java.util):

StringTokenizer tokens = new StringTokenizer(CurrentString, ":");
String first = tokens.nextToken();// this will contain "hours"
String second = tokens.nextToken();// this will contain "Minutes"
// in the case above I assumed the string has always that syntax (12:30)
// but you may want to check if there are tokens or not using the hasMoreTokens method
Другие вопросы по тегам