首页 > 编程知识 正文

java中reverse,*p++,*++p,++*p,(*p)++的区别

时间:2023-05-04 00:21:20 阅读:111375 作者:2175

三种区分next ()、nextInt ()和nextLine () )都是Scanner的内置方法,主要体现在处理空间的方式和返回值方面的差异。

对空格的处理

使用nextLine ()方法时,会将空格视为字符串的一部分,而不是两个字符串之间的间距

如果使用next (和nextInt )方法遇到空间,将停止读取并返回在空间之前读取的内容。

返回值

nextInt ) )的返回值为int型。

next ()、nextLine )的返回值都是字符串类型;

当然,如果输入了数值,也可以通过nextLine ()接收并通过integer.parseint (scan.nextline ) )进行转换。

作为例子使用scanners can=new scanner (system.in ); System.out.println ('输入开始:'); System.out.println (内容: ) scan.nextline ) ); 结果:

开始输入:

12 34 56

内容:12 34 56

scanners can=new scanner (system.in ); System.out.println ('输入开始:'); while(scan.Hasnext () ) { System.out.println ) )内容:' scan.next ) ); //nextInt ) )的用法与next ) )相似)的结果:

开始输入:

12 34 56

内容:12

内容:34

内容:56

注意事项如果next ()、nextInt () )在读取数据后指针仍位于当前行中,且紧跟在nextLine () )之后,则会出现数据读取错误。 示例:

sannersc=newscanner(system.in; System.out.println ('请输入您的姓名:'); String name=sc.nextLine (; System.out.println ('请输入年龄:'); int age=sc.nextInt (; System.out.println (名称: ' name ); System.out.println (年龄: ' age ); 结果:

请输入你的名字。 name请输入您的年龄。 18名称: name年龄: 18此时结果正常,但尝试调换sc.nextLine (和sc.nextInt )的顺序。

sannersc=newscanner(system.in; System.out.println ('请输入年龄:'); int age=sc.nextInt (; System.out.println ('请输入您的姓名:'); String name=sc.nextLine (; System.out.println (名称: ' name ); System.out.println (年龄: ' age ); 结果:

请输入年龄。 请输入18个名字。 姓名:年龄: 18此时可知。 输入结果错了。 解决办法如下。

sannersc=newscanner(system.in; System.out.println ('请输入年龄:'); int age=sc.nextInt (; sc.nextLine (; 添加sc.nextLine (; System.out.println ('请输入您的姓名:'); String name=sc.nextLine (; System.out.println (名称: ' name ); System.out.println (年龄: ' age );

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。