scanner-帮忙看看这个程序,为什么设置读取的分隔符为换行后无法正确读入数据

问题描述

帮忙看看这个程序,为什么设置读取的分隔符为换行后无法正确读入数据

import java.util.Scanner;
public class ScannerDemo2{
public static void main(String []args){
Scanner scan=new Scanner(System.in);
scan.useDelimiter("n");//设置了分隔符后无法读入整数和小数,if语句判断都是false,为什么?
System.out.println("请输入整数:");
int num=0;
if(scan.hasNextInt()){
num=scan.nextInt();
}else{
System.out.println("输入的不是整数");
scan.next();
}
System.out.println("请输入小数");
float f=0f;
if(scan.hasNextFloat()){
f=scan.nextFloat();
}else{
System.out.println("输入的不是小数");
}
System.out.println("整数:"+num);
System.out.println("小数"+f);
}
}
帮忙看看这个程序,为什么设置读取的分隔符为换行后无法正确读入数据

解决方案

正确的分隔符不应该是"n"(单个换行),而应该是"rn"(回车换行)才对。修正如下,就正确了:

 scan.useDelimiter("rn");

解决方案二:

你怎么输入的,我没发现问题

http://ideone.com/LWZXql
请输入整数:
请输入小数
整数:1
小数2.1

时间: 2024-10-31 15:55:58

scanner-帮忙看看这个程序,为什么设置读取的分隔符为换行后无法正确读入数据的相关文章

怎样通过XML保存和读取程序的设置呢?

问题描述 怎样通过XML保存和读取程序的设置呢? 解决方案 解决方案二:哪位老兄说说!?解决方案三:参考下如下:'读XMLgdsConfig.ReadXml(gstrIniFileName)'XML文件路径TrygstrCompanyName=gdsConfig.Tables("Registration").Rows(0)("CompanyName")gstrServerIP=gdsConfig.Tables("socket").Rows(0)(

c++ 指针-c++ 请求帮忙修改一下程序 多谢!

问题描述 c++ 请求帮忙修改一下程序 多谢! 程序要实现 通过上下键能翻行 左右键翻页 程序不知哪里错了不能实现这个功能 请帮忙修改一下 多谢! #include #include #include #include #include #define MAXLINE 100 // 最大支持行数fpos_t posbefore[MAXLINE]; // 保存行开始位置char tmp[100]; // 输出缓冲区 void DisplayMenu(); // 显示菜单int ChooseMenu

大神帮帮忙,这个程序的错怎么改

问题描述 大神帮帮忙,这个程序的错怎么改 /* 定义一个计算器类,要求实现加减乘除操作. / import java.util.; public class HomeWork_1110_02 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入第一个数的值:"); double a=sc.nextInt(); //从控制台接收第一个数字

注册表-64位操作系统下,如何用程序实现设置管理员权限和兼容性

问题描述 64位操作系统下,如何用程序实现设置管理员权限和兼容性 在线急用.目前有一个需要在U盘上运行的程序,通过注册表来实现管理员权限和兼容性设置,(注册表位置:HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionAppCompatFlagsLayers,需要设置键名称为可执行文件的全路径,键值为WINXPSP3 RUNASADMIN),在win7 32位系统上正常,可执行文件的全路径就是盘符+目录名+文件名,但是在win7 64

app-跪求高手帮忙看下程序为什么android连接不到servlet上,谢谢大家了

问题描述 跪求高手帮忙看下程序为什么android连接不到servlet上,谢谢大家了 android客户端 package com.android.helloworld; import java.io.DataOutputStream; import java.io.IOException; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException;

使用Settings Bundle为程序添加设置项

创建一个Demo来学习一个Setting Bundle为程序存储设置项 Settings Bundle是在自己的程序中建立的一组文件,利用它可以告诉设备中的Settings程序我们写的程序有哪些设置项.用户在Settings程序中设置好相关相关选项后回到我们自己的程序,自己的程序中的对应项也会发生相应的变化. 在iOS程序中,用户默认项,即上面所说的设置项,是用NSUserDefaults类实现的.在NSUserDefaults类中使用关键字来读取和存储设置项的具体数据,就像NSDictiona

解决方案-winform窗体程序怎么设置QQ的定时重启

问题描述 winform窗体程序怎么设置QQ的定时重启 使用winfrom窗体程序,怎么定时启动QQ应用程序,谢谢 有解决方案的可以帮帮忙吗 在这里谢谢了 下面是我个人邮箱254243717@qq.com 解决方案 只要启动QQ吗?用一个winform程序加个timer定时器就是了,找到qq.exe所在的路径,然后process.start启动. 解决方案二: 可以调用Win32 API CreateProcess/ShellExecuteEx() 解决方案三: 先获取进程列表,然后根据进程名判

win7关机时强制关闭程序的设置方法

  win7关机时强制关闭程序的设置方法要修改组策略编辑器. "开始--运行",输入"gpedit.msc"打开组策略编辑器. 依次找到并展开"计算机配置→管理模板→系统→关机选项", 双击右侧窗格中的"关闭会阻止或取消关机的应用程序的自动终止功能", 在弹出的后续窗口中点击并修改为"已启用"), 应用确定后退出,这样以后再遇到未关闭的程序时, Windows7系统将自动终止并强制关机.

win8系统为不同的程序分别设置相关的输入法

  现在电脑的功能千奇百怪,我们对于电脑的功能要求也是越来越高,经常是不同的程序需要不同的输入法以供使用,中文的需要专门的中文输入法,英文需要特殊的英文输入法,所以我们经常要不断的切换输入法,很是麻烦.所以有时候我们想要针对不同的程序设定特定的输入法,这样就减少了很多不必要的麻烦.对于设置方法也很简单的,只要在系统程序中修改设定下就可以了,所以我们一起来看看吧! 1.打开win8系统控制面板,然后找到时钟.语言和区域,直接选中,接着在语言选项中选中"高级设置"选项; 2.接着把 &qu