题目要求
在字符串中找出连续最长数字串,返回这个串的长度,并打印这个最长数字串。
例如:abcd12345cd125se123456789,返回 9 ,打印出123456789。
具体代码如下:
package www.nuanzhi.task;
import java.util.Scanner;
import java.lang.String;
public class task2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入字符串:");
String s = scanner.nextLine(); //输入一个字符串
int count = 0; //用来记录数字字符串的下标
int max = 0; //用来记录最长字符串的下标
int end = 0; //用来记录数字字符串最后一位的下标
for (int i = 0; i < s.length(); i++) {
if(s.charAt(i)>='0'&&s.charAt(i)<='9'){
count++;
if(count>max){
max = count;
end = i;
}
}
else {
count = 0;
}
}
System.out.println("最长字符串的长度:"+max);
System.out.println("打印出:"+s.substring(end-max+1, end+1));
}
}
输出结果: