hasNext()用法_一直开心的博客-程序员ITS301_string.hasnext()

技术标签: java  hasNext()  string  

package com.ethjava;
import java.util.Scanner;
public class hasnextlizi {
    public static void main(String[] args){
      Scanner sc=new Scanner(System.in);
      String input=null;
      /*
      input=sc.next();
      System.out.println(input);
      //sc.nextLine();
      input=sc.nextLine();
      System.out.println(input);
      sc.close();
      System.out.println(input.length());
      */
        //在运行nextLine()时我想再次输入,但是它读取了next()剩下的回车。当在sc.next()后面加一个sc.nextLine()即可消除该回车。
        //当你输入一串带空格的字符串,敲下回车后,若最开始碰到sc.next(),sc.next()只会读取第一个不是空格的单词。
        // 例如,当sc.next读完hello后,读取的cursor是在空格前,导致读取的nextLine长度是6。
      /*
      第二部分:遇到hasNext()时,Scanner也会阻塞,等待你输入,等你输入后返回true。
      查看jdkapi,你会发现该方法当Scanner缓存区中有值可读时,会返回true,
      若没有,会一直阻塞等待你输入。
      当我们想退出用hasNext作条件的while()循环时,那么要么控制台手工输入ctrl+z,要么 while(!sc.hasNext("#"))约定当一行输入#时退出。
        */
      /*
      boolean hasnext=sc.hasNext();
      System.out.println(hasnext);
      while(!sc.hasNext("#")){
          System.out.println("请输入");
          input =sc.nextLine();
          System.out.println(input);
      }
      sc.close();
      System.out.println(input.length());
     */
        int input2;
        while(true){
            if(sc.hasNextInt()){
                input2 = sc.nextInt();
                break;
            }else{
                System.out.println("请输入数字");
                sc.next();//实现hasNextInt的读取的标记位置的改变
            }
        }
        System.out.println("输入的数字是:"+input2);

        //hasNextInt()函数大体意思表示scanner当前的标记的输入是否为int,并不会自动的移动标记。
        //例如实现一个判断当前到输入是否为数字,不是的话提示输入数字。若是以下代码:当输入的不是数字时,会一直输出请输入
        //要实现hasNextInt的读取的标记位置的改变,可以用scanner.next()移动。





    }

}

 

参考:

https://blog.csdn.net/weixin_41262453/article/details/88815173?utm_source=app

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wenyunick/article/details/103081825

智能推荐

CSP图论复习_starusc的博客-程序员ITS301_csp图论

最短路dijkstraO((m+n)logn)O((m+n)log_n)O((m+n)logn​)基于贪心思想,不能处理负边权(每个点第一次出为最短路,但负边权若离源点较远,还没更新到就已确定了答案)inline void dijkstra(){ memset(dis,0x3f,sizeof(dis)); memset(vis,0,sizeof(vis)); dis[1]=0; p...

Razor C# 标记语法_貴重物品的博客-程序员ITS301_c# razor语法

Razor C# 标记语法~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~开发工具与关键技术:Visual Studio 2015 razor C#语法作者: 李杨撰写时间:2019-04-10~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...

dac生成信号频率取决于_DAC产生直流电压或任意波形_weixin_39716921的博客-程序员ITS301

大量设备都使用数/模转换器(DAC)来实现各种各样的功能。高精度、电压输出DAC的常见应用有仪器仪表、自动测试以及测试/测量设备。在这些应用中,DAC产生直流电压或任意波形。对于这些电路,使用电压输出DAC进行设计的最具挑战的部分就是真实了解这种怪兽在其规定精度范围之内到底能够跑多快。如果某款设备的时钟频率为50MHz,那么就电压输出更新速度来说,这意味着什么?或者,除了知道时钟频率之外,还需要更...

采集音频和摄像头视频并实时H264编码及AAC编码_mrwangwang的博客-程序员ITS301

0. 前言  我在前两篇文章中写了DirectShow捕获音视频然后生成avi,再进行264编码的方法。那种方法有一些局限性,不适合实时性质的应用,如:视频会议、视频聊天、视频监控等。本文所使用的技术,适用于这种实时性的应用,通过处理采集出来的音视频的每一帧,实现实时编码,实时输出。这是我做直播系列应用的一部分,目前的情况是输入端采用DirectShow技术捕获音视频,然后对视频进行h.2

power designer远程连接oracle数据库并导出E-R图_程戌鸢的博客-程序员ITS301_oracle数据库何如导出e-r图

最新遇到的一个问题是,我已经在数据库端创建好了相应的table,但是想利用power designer反向工程生成E-R图设计,这就存在一个客户端与数据库端连接的问题。这里,推荐在客户端安装oracle提供的client,笔者测试下通过的环境为Win8 pro + ora_client11g + centos6.3 server oracle 11g R2.    现在就一步步的设置好

win7+ubuntu双系统删除ubuntu_tiankong_hut的博客-程序员ITS301_双系统如何删除ubuntu

我的电脑用windows引导ubuntu,直接删除ubuntu就行,然后在easyBCD中删除ubuntu,跳过启动菜单。删除后的分区可以用 DiskGenius 分区工具调整,比较好用。但是如果用ubuntu用GRUB引导windows,则需要先修复引导菜单。可以尝试用以下一种方法:     1,diskgenius中的“重建主引导记录MBR”; (有window...

随便推点

Flex 页面空白或Error #2032_小虾爬滑丫爬的博客-程序员ITS301

李石磊学习心得(转载)日前用flex、arcgis做了一个地图显示的页面,本机调试没题目,公布后放到用户办事器上(win2003,ie6)ie6显示页面空白,换搜狗浏览器显示Error #2032,只显示进度条,客户端用ie6显示空白,360浏览器等显示Error #2032。用下面两种办法结合后题目解决。从网上找的几个解决办法,留做备用第一种景象:

2017.2.20 activiti实战--第一章--认识Activiti_weixin_30896825的博客-程序员ITS301

学习资料:《Activiti实战》第一章 认识Activiti内容概览:讲解activiti的特点、接口概览、架构等基本信息。1.3 Activiti的特点1.使用mybatis2.原生支持spring,可以轻松集成spring3.引擎的Service接口Activiti引擎提供了7大Service接口,均通过processEngine获取,支持链式AP...

pdf文件如何生成目录 wps_如何使用WPS把Word文档转换为PDF文档并生成目录?_weixin_39595487的博客-程序员ITS301

回答:Word转换PPT常用的三种方法方法一:发送法。 在Word中,打开相应的文档,把Word中需要转换成PPT的字符设置成标题1、标题2、标题3,不必考虑字体、段落格式。执行“文件→发送→MicrosoftOfficePowerPoint”命令,系统自动启动PowerPoint,并将Word中设置好格式的文档转换到演示文稿中。 文稿转换好了以后,首先是进行字体、段落设置,然后点击相应按钮,...

matlab 地形图 .grd,利用全球地形数据绘制EPR的地形图并添加测线_岳胤錕的博客-程序员ITS301

bat脚本set PS="topo.ps"set R=104:30W/104:00W/9:20N/10:00Nset topodata="topo15.grd"gmt grdcut %topodata% -R%R% -GcutTopo.grdgmt grdgradient cutTopo.grd -Nt -A50 -GcutTopo_i.grdgmt makecpt -Crainbow -T-3...

OS_Sched 函数_sunrier的博客-程序员ITS301

//任务调度//uCOS-II总是运行进入就绪态任务中优先级最高的那一个。确定哪个任务优先级最高,下面该哪个任务运行了的工作是//由调度器(Scheduler)完成的。任务级的调度是由函数OSSched()完成的。中断级的调度是由另一个函数OSIntExt()完//成的Scheduling。//注意:1) 这是一个uCOS-II内部函数,你不能在应用程序中使用它// 2

Java堆栈简单分析:线程中有队列堆积大量任务导致请求无响应。_zhizhizhi志的博客-程序员ITS301_堆栈当中阻塞线程较多

使用 Jstack pid 打印出堆栈信息:进行初步分析:1.没看到线程有死锁的标志。2.通过top命令 分析。CPU确实存在异常,达到120%。初步判断是否有死循环的问题?3.判断死循环一般会gc 很频繁。gc线程也应该大量占用cpu,ps -mp pid -o THREAD,tid,time 发现有几条玩家线程cpu占用高。4.Jstack 打印出来。"async-or-r...

推荐文章

热门文章

相关标签