import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); String str=in.nextLine(); int sum=0; for(int i =str.length()-1;i>=0&&str.charAt(i)!=' ';i--){ sum++; } System.out.println(sum); } }
1.先定义一个字符串类 str;用nextline接受一行的数据:
String str=in.nextLine();
//next()方法读取到空白符就结束;nextLine()读取到回车结束也就是“\r”;
2.定义一个sum计数:
int sum=0;
3.之后就是用for循环,从最后一个开始往前读,已经设定了结尾不是空格,不用考虑,从最后一个往前,读到空格或者读完结束
字符串内计数从0开始,但是length是从1开始,所以i =str.length()-1
for(int i =str.length()-1;i>=0&&str.charAt(i)!=' ';i--){
sum++;
}
4.最后用println输出,print也行,有的题目要求不换行输出,就要用print。:
System.out.println(sum);
//System.out.println() 可以不写参数,输出完会加一个换行,System.out.print(参数) 参数不能为空.必须有参数,输出完不换行