java时间纯数字_Java:单独的时间数字

基于Chris Nava的想法(首先回答他的回答)并假设您想要int数字而不是char:

public class TimeSplit {

public static void main(String[] args) throws ParseException {

printSplit("8:24"); // [0, 8, 2, 4]

printSplit("10:22"); // [1, 0, 2, 2]

printSplit("13:57"); // [0, 1, 5, 7] because of 12h

}

private static void printSplit(String time) throws ParseException {

System.out.println(time + " -> " + Arrays.toString(split(time)));

}

private static int[] split(String time) throws ParseException {

DateFormat fmt = new SimpleDateFormat("hh:mm"); // 12h, use HH for 24h

Calendar calendar = Calendar.getInstance();

calendar.setTime(fmt.parse(time));

return split(calendar);

}

private static int[] split(Calendar time) {

int hours = time.get(Calendar.HOUR); // 12h, use HOUR_OF_DAY for 24h

int minutes = time.get(Calendar.MINUTE);

int[] digits = new int[4];

digits[0] = hours / 10;

digits[1] = hours % 10;

digits[2] = minutes / 10;

digits[3] = minutes % 10;

return digits;

}

}输出:

8:24 -> [0, 8, 2, 4]

10:22 -> [1, 0, 2, 2]

13:57 -> [0, 1, 5, 7]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值