牛客习题总结3

在这里插入图片描述
首先有两个public类是不行的,其次,name设置为private,则在child类中不能访问到
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里需要在子类中调用父类的构造方法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
执行start方法后,才执行
在这里插入图片描述

import java.util.Scanner;
public class Main1 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String str = in.nextLine();
        String ret = "";
        int count = 0;
        for(int i = 0;i<str.length();i++) {
            if(str.charAt(i)>='0'&&str.charAt(i)<='9') {
                int index = i;
                count = 1;
                for(int j=i+1;j<str.length();j++ ) {
                    if(str.charAt(j)>='0'&&str.charAt(j)<='9') {
                        count++;
                        index = j;
                    }else {

                        break;
                    }
                }
                if(count>ret.length()) {
                    ret = str.substring(i,index+1);
                }else {
                    continue;
                }
            }
        }
        System.out.println(ret);
    }
}

先定义一个空的字符串用来存储最长的字符串,相当于擂台,然后从字符串第一个开始遍历,如果是数字就用Index标记这个位置,然后从当前重新进入循环判断数字字符串长度,是数字就count++同时更新标记位,如果不是当前字符串的连续就断了就跳出当前循环,然后把第一个连续字符串长度用截取方法根据标记位截取到字符串,并放入擂台中。
在这里插入图片描述
这个需要注意,如果从第一个循环的i开始继续向下进行的时候,还会遇到第一个连续字符串的子集,都肯定是比原字符串长度短的,就是一路continue,直到原字符串结束,才重新开始偶遇下一个连续字符串。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章