1.字符的输入问题(牛客网用的比较多)
nextLine() 会自动读取 字符串末尾的\n,因此以后刷题
遇到输入数字的 直接用 scan.nextInt() ,nextDouble() , nextFloat()
输入字符串的 用 scan.next() 或者 scan.nextLine(),但是 nextLine()不能在next()或者nextInt(),nextDouble() 、 nextFloat() 原因在最下面
遇到循环输入的
Scanner scan = new Scanner(System.in);
while(scan.hasNext())
{
String str = scan.nextLine();
System.out.println(lengthOfLast(str));
}
!!!! next() 读到空格处就不读了, nextLine() 读一行
java中Scanner类中nextLine()方法与next()或nextInt()联用时可能出现一个常见的错误,那就是当next()或者nextInt(),nextDouble() 、 nextFloat()用在nextLine的前面时。nextLine会把前者的结束符“换行符”作为字符串读入,进而不需要从键盘输入字符串nextLine已经转向下一条语句执行
https://blog.csdn.net/tuke_tuke/article/details/51330086
next()只读空格之前的数据,并且cursor指向本行,后面的nextLine()会继续读取前面留下的数据。
想要读取整行,就是用nextLine()。
读取数字也可以使用nextLine(),不过需要转换:Integer.parseInt(cin.nextLine())。
2、 length是否带括号的问题
字符串取长度要加括号--》 str.length()
数组取长度不要括号 --》 arr.length