修改一句代码就可以了
String shuru = sc.next();
修改成为
String shuru = sc.nextLine();
运行测试
请输入任意字符:abc 123 de字母有:5个数字有:3个空格有:2个
原因解释
//next()使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。所以你的输入如果有空空格,那么空格后面的输入就没有读入进来
//nextLine()每次读入一行,无论你中间是否有空格, 都是读取一行