题解 | #在字符串中找出连续最长的数字串#
在字符串中找出连续最长的数字串
https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec
import java.util.*; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while (in.hasNextLine()) { // 注意 while 处理多个 case String s = in.nextLine(); //存储结果-开头指针 List<Integer> list = new ArrayList<>(); char[] arr = s.toCharArray(); int i = 0; int j = 0; int max = 0; while(j < arr.length){ if(Character.isDigit(arr[j])){ if(!Character.isDigit(arr[i])){ i = j; } while(j < arr.length && Character.isDigit(arr[j])){ j++; } if(max < j-i){ list.clear(); list.add(i); max = j - i; }else if(max == j - i){ list.add(i); } i = j; }else{ j++; } } for(int index : list){ System.out.print(s.substring(index, index + max)); } System.out.print("," + max); System.out.println(); } } }