嘿!小猪最近好忙,没什么空写博客,现在给你们分享一道题!
希望你们喜欢~
前言
如果哪里解析错误的,希望大佬帮忙指正!谢谢!
一,题目
【字符串中找出连续最长的数字串】读入一个字符串str,输出字符串str中的连续最长的数字串
二,解析
1,浅理解
定义i遍历字符串,再定义两个空的字符串变量,如果遇到数字就把数字放cur中,再用cur的长度和ret的长度作比较,如果ret比cur短,则ret=cur,如果长,则把cur置为空,最后输出ret。
2,深理解
如果字符串结尾是数字串,而且比前面的数字串长,此时i遍历的长度等于字符串的长度,ret并不置为cur,此时案例不会通过,所以要再考虑这种情况。
三,代码
import java.util.Scanner;
public class Main3 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String s = scanner.nextLine();
String cur = "";
String ret = "";
int i =0;
for (; i <s.length() ; i++) {
char ch = s.charAt(i);
if(ch>='0'&&ch<='9'){
cur = cur+ch+"";
}else {
if (cur.length() > ret.length()) {
ret = cur;
} else {
cur = "";
}
}
}
if(i==s.length()&&ret.length()<cur.length()){
ret = cur;
}
System.out.println(ret);
}
}
本期的博客就到此结束了!
下期再见了~