题目
有一个整型数组, {1, 2, 3, 5, 7, 9, 10, 11, 12, 26, 27}, 将其中连续的数字用 “-” 连接,输出格式如: 1-2,3,5,7,9-10,11-12,26-27
代码
private static String mergeContinueNumToStr(int[] nums1) {
StringBuffer sb = new StringBuffer();
int length = nums1.length;
for (int i = 0; i < length; i++) {
String temp = String.valueOf(nums1[i]);
if (i + 1 < length && nums1[i + 1] == nums1[i] + 1) {
i ++;
temp += ("-" + nums1[i]);
}
sb.append(temp).append(",");
}
sb.deleteCharAt(sb.length() -1);
return String.valueOf(sb);
}
运行演示
int[] nums1 = {1, 2, 3, 5, 7, 9, 10, 11, 12, 26, 27};
String s = mergeContinueNumToStr(nums1);
System.out.println("s = " + s);
结果
s = 1-2,3,5,7,9-10,11-12,26-27