【发布时间】:2014-05-28 21:59:45
【问题描述】:
我有这个程序要求用户以 XX:XX 格式输入时间,其中 X 是一个数字。它接受这个作为字符串。我试图弄清楚如何获取这个字符串,将前 2 位数字分隔成一个子字符串,将它们转换为整数,然后将它们分配给“小时”实例变量。然后对以下 2 位数字执行相同的操作作为“分钟”。但是如何将单个字符串与特定索引值分开。这可能吗?
【问题讨论】:
我有这个程序要求用户以 XX:XX 格式输入时间,其中 X 是一个数字。它接受这个作为字符串。我试图弄清楚如何获取这个字符串,将前 2 位数字分隔成一个子字符串,将它们转换为整数,然后将它们分配给“小时”实例变量。然后对以下 2 位数字执行相同的操作作为“分钟”。但是如何将单个字符串与特定索引值分开。这可能吗?
【问题讨论】:
String time = "XX:XX";
int hours = Integer.parseInt(time.substring(0,2));
int minutes = Integer.parseInt(time.substring(3,5));
【讨论】:
最好的办法是在冒号处用String.split()分隔:
String myString = "01:45";
String[] parts = myString.split(":");
//parts[0] = "01"
//parts[1] = "45"
然后您可以单独访问这些部分:
int part1 = Integer.parseInt(parts[0]);
int part2 = Integer.parseInt(parts[1]);
//part1 = 1
//part2 = 45
【讨论】:
是的,这可以做到。首先你获取小时和分钟的子字符串,然后使用 parseInt 将字符串转换为整数。
String time = "12:30";
String hour = time.substring (0, 2);
String minute = time.substring (3, 5);
int hourNum = Integer.parseInt(hour);
int minNum = Integer.parseInt(minute);
System.out.print (hourNum + ":" + minNum);
【讨论】: