Java:检测变量是字符串还是整数

2024-01-19

我正在为我的一些家庭作业寻求一些帮助。我希望用户输入一个数字字符串,然后将其转换为整数。但我想创建一个循环来检测用户是否输入了错误的值,例如“一百”而不是“100”。

我的想法是做这样的事情:

    do{
        numStr = JOptionPane.showInputDialog("Please enter a year in numarical form:"
                        + "\n(Ex. 1995):");
        num = Integer.parseInt(numStr);
            if(num!=Integer){
            tryagainstr=JOptionPane.showInputDialog("Entered value is not acceptable."
                                  + "\nPress 1 to try again or Press 2 to exit.");
    tryagain=Integer.parseInt(tryagainstr);
            }
            else{
            *Rest of the code...*
            }
            }while (tryagain==1);

但我不知道如何定义该“整数”值。我本质上希望它看看它是否是一个数字,以防止它在用户输入错误时崩溃。


Try use instanceof,此方法将帮助您在多种类型之间进行检查

Example

if (s instanceof String ){
// s is String
}else if(s instanceof Integer){
// s is Integer value
}

如果您只想检查整数和字符串,可以使用 @NKukhar 代码

try{
        Integer.valueOf(str);
    } catch (NumberFormatException e) {
        //not an integer
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java:检测变量是字符串还是整数 的相关文章

  • JavaFX:如何在 JavaFX 中正确使用 ProgressIndicator

    我是 JavaFX 新手 我的 JavaFX 应用程序有问题 我需要在数据库查询之前启动 ProgressIndicator 类型 INDETERMINATE 这是我的代码的一部分 spinner setVisible true passC
  • Mockito - 监视真实对象调用原始方法

    想象一下下面的代码 List list List spy spy list doThrow new NullpointerException when spy get 0 doThrow 执行list get 0 这根本没有意义 我想定义模
  • 同步 Set 线程的构造函数副本安全吗?

    获取同步版本的最简单方法java util Set将使用Collections synchronizedSet 像这样 Set mySyncSet Collections synchronizedSet new HashSet The Ja
  • 使用synchronized关键字和lock有什么区别[重复]

    这个问题在这里已经有答案了 Java 5引入了lock方法 与synchronized关键字相比 使用lock有什么优点和缺点 同步 将锁定该方法内访问的任何资源 lock 允许您进行更精细的控制 例如 仅锁定某些资源 或者仅在满足特定条件
  • 为什么 java.util.concurrent.FutureTask 不可序列化

    我目前正在使用 Apache Wicket 我有一些 REST 调用 每个调用需要几秒钟 Wicket 只允许同步调用 ajax 所以我尝试使用 Future 和 Callable 这是我的课程的一部分 public abstract cl
  • JavaFX TabPane 禁用按键切换选项卡

    我有一个Tab有一些内容 ScrollBar和别的 The ScrollBar has event handler for keys left and right 但如果我按下这些按钮Tabs被切换 因为TabPane还有一个密钥处理程序
  • 如何从 Android 服务获取应用程序上下文?

    我有一个正在运行并监听麦克风输入的 Android 服务 我希望它在满足特定条件时启动一项活动 为了创建意图 我需要应用程序上下文 我怎么才能得到它 Intent i new Intent ctx SONR class i addFlags
  • 映射枚举列表

    我有一个名为 UserPermissions 的表 其中通过 userId 与用户表进行 FK 然后是一个用于枚举字符串值的字符串列 我看到的错误是 NHibernate MappingException 表 UserPermissions
  • 如何在 selenium webdriver 中将网络浏览器从 Firefox 更改为 Chrome/Opera/IE/Safari?

    如何将浏览器从 firefox 更改为在 selenium webdriver 中工作的 Chrome Opera IE 请指导步骤以及代码片段 如果您对上述任何浏览器有答案 请回复 我读了很多这方面的内容 但无法正确链接 首先 您需要将正
  • 如何统计List中某个元素出现的次数

    我有一个ArrayList Java的Collection类 如下 ArrayList
  • 我需要转义该 MATLAB 字符串中的字符吗?

    我想在 MATLAB 中调用以下 bash 命令 grep Up to test linux vision1 1 log awk print 7 I use system 在MATLAB中 但结果有错误 gt gt status strin
  • 手写签名对比

    有谁知道java中一种将手写文本样本 例如签名 亲笔签名等 与一个或多个样本进行比较的方法 最好是开源的 你可以看看这个OCR小程序 http www heatonresearch com articles 42 page1 html
  • 从字符串中删除特定字符[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何从字符串中删除特定字符 我有一个 Arraylist 测试数组 String line testingarray get index
  • 信号量如何工作?

    信号量可以小于0吗 我的意思是 假设我有一个 N 3 的信号量 并且我调用 down 4 次 那么 N 将保持为 0 但一个进程将被阻塞 反之亦然 如果一开始我调用 N 可以大于 3 吗 因为在我看来 如果 N 可以高于 3 如果一开始我调
  • PDFBox - 无障碍 PDF - 如何检查 PDF 标签是否具有符合无障碍指南的属性

    需要检查 PDF 标签是否具有符合辅助功能指南的属性 例子 H1 验证 PDF 中是否存在 H1 图像 图形标签 验证图像 图形是否具有 Alt 文本 语言 验证语言属性是否已设置 以便屏幕阅读器能够正确阅读 对于西班牙语和英语文档 应更新
  • Selenium WebDriver (java) 可以与浏览器的检查工具元素选择器交互吗?

    通过使用 selenium 我可以访问位于检查选项卡中的浏览器元素选择器 在浏览器中按 Ctrl Shift C 吗 我想使用该选择器 指向 一个元素 并使其在浏览器中突出显示 例如 简单的事情如下 WebElement elem driv
  • 正确检查 FTP 服务器连接

    我在程序开始时打开与 FTP 服务器的连接 在对服务器执行操作之前 我想检查连接是否已成功建立 最简单快速的方式 因此如果连接消失 我将尝试再次连接 我用这段代码来做到这一点 private boolean checkConnection
  • 使用具有透明度的 IndexColorModel 绘制图像

    这是我的问题 我想在基于具有透明度的 IndexColorModel 的 BufferedImage 上应用转换 平移 旋转 剪辑 索引 0 是我的透明像素 索引 1 是黑色 索引 2 是白色 依此类推 源图像 即在转换之前 被实例化如下
  • Java/Android 字符串到颜色的转换

    我正在制作一个应用程序 我希望能够通过用户输入 edittext 和十六进制值设置各种颜色 例如 eeeeee等等 问题是我似乎不知道如何转换它们 如果我在代码中做这样的事情 它工作得很好 标题栏 setBackgroundColor 0x
  • Spring Boot 应用程序崩溃

    请告诉我哪里有问题 我尝试启动我的第一个在 Spring Boot 上开发的应用程序 我已经在 SpringMVC 上有了简单的 Web 项目 现在我喜欢在 BOOT 上构建它 这是错误输出 org springframework bean

随机推荐

  • 替换以 # 开头然后是整个单词的占位符

    我需要替换文本中以井号 开头的单词 好吧 我知道如何替换整个单词 preg replace b variable b value text 因为 b 修饰符只接受单词字符 所以包含哈希标记的单词不会被替换 我有这个 html 其中包含 co
  • 获取短日名称

    我想知道如何编写一个方法 该方法将返回一个包含短日名称的字符串 例如 public static string GetShortDayName DayOfWeek day 现在如果我打电话 string monday GetShortDay
  • MySql 重新启动后:#1452 - 无法添加或更新子行:外键约束失败

    MySql 重新启动后 当我尝试更新或插入行时 出现此错误 1452 无法添加或更新子行 外键约束失败 奇怪的是 当我使用 phpMyAdmin 再次删除并添加键约束时 问题就消失了 另外 我只在 MAMP 上遇到这个问题 在 WAMP 上
  • 从 Java 中的 Json 字符串中删除重复项?

    我有一个包含重复值的 Json 字符串 String json Sign In Type Action Sign In Type Action 当我尝试创建 JSONObject 时 它会正确抛出异常 try JSONObject json
  • 如何在 IntelliJ 中保存打开的选项卡组?

    如何在 IntelliJ 中保存一组打开的选项卡 以便我可以在 Git 分支之间切换并为每个分支调出一组工作文件 谢谢 您可以保存上下文 其中包括一组打开的选项卡以及一些其他信息 例如活动的运行配置 使用Tools Tasks Contex
  • 正则表达式如果捕获组匹配字符串

    我需要构建一个简单的脚本来连接罗马尼亚语单词 我见过几个 他们没有正确执行规则 var words arta codru 规则 如果 2 个辅音位于 2 个元音之间 则它们会在音节之间分开 除非它们属于此数组 在这种情况下 两个辅音都会移动
  • 了解 Ubuntu 中不同对象的相同 inode 编号

    为什么 cdrom 的 inode 号与 cdrom 的 inode 号相同 sys devices platform power在Ubuntu中 以下在我的 Ubuntu 中具有相同的 inode 编号 media BACKUP 1 MI
  • WPF - Graphics.CopyFromScreen 返回黑色图像

    以下方法取自 WinForms 应用程序 它只是捕获屏幕 但我需要修改它才能在 WPF 应用程序中工作 当我使用它时 它返回黑色图像 尺寸正确 我没有任何打开的 DirectX 或视频 甚至在我的桌面上也无法工作 public static
  • 如何使用stemCompletion函数(tm包)从字典中完成词干语料库

    我在 R 的 tm 包中遇到问题 我使用的是 0 6 2 版本 以下问题 2个不同的错误 已得到解答here https stackoverflow com questions 24191728 documenttermmatrix err
  • GCC C++ 异常处理实现

    我想知道GCC是如何实现C 程序的异常处理的 我在网上找不到一篇易于理解且不言自明的文章 尽管针对 Visual C 有很多这样的文章 我所知道的是GCC的实现称为DWARF异常处理 我编写了一个小型 C 程序 并使用以下命令将其转换为汇编
  • Jquery - 动画innerHTML 可能吗?

    我试图有一个函数来执行 setTimeout 然后更改innerHTML Question 我如何为出现的新文本设置动画 即逐行而不是一次全部写入 感谢您的任何建议 尝试这样的事情 div div document ready
  • 如何使用valist从C调用java vararg方法

    我有带有可变参数的 C 方法 void message int id 它应该使用 vararg 调用 Java 静态方法 public static void message String messageName String args 我
  • 不断增长的 Amazon EBS 卷大小 [已关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 亚马逊的 EC2 和 EBS 服务给我留下了深刻的印象 我想知道是否可以增加 EBS 卷 例如 如果我有 50 GB 的卷 但空间开始不足 我可以在需
  • C++ 内存中键值存储

    我正在寻找有关具有 C 接口或用 C 编写的内存中键值存储引擎或库的建议 我正在寻找可以毫无问题地扩展到大约 100mill 个键值对并且在 Linux 和 win32 64 上兼容 编译的解决方案 怎么样std map http cplu
  • R list() 的 Python 等效项

    R 的 list 也允许标记元素 Python 中是否有等效的方法来实现以下功能 list prob topTalent name Roger Python 文档位于https docs python org 3 tutorial intr
  • 如何查看给定 iOS ipa 文件中定义的 NSString

    我记得我以前做过这个 但忘记了命令 e g 我在源代码中定义了一个 NSString 例如 NSString s secret 我记得我可以使用以下命令查看内容strings命令 但我忘记了查看它的确切命令 e g strings my i
  • 1064, “您的 SQL 语法有错误;...” Python MySQL

    所以我从上周五开始就一直在研究这个问题 但无法解决这个错误 第1064章 你的SQL语法有错误 检查手册 与您的 MySQL 服务器版本相对应 以便使用正确的语法 第 1 行的 u 161010 035670 WHERE order id
  • 必填字段验证器未触发

    我在使用具有 TextBox 和 requiredFieldValidator 的标准 ASP NET 页面时遇到问题 重现的步骤非常简单 在页面上放置一个文本框 在页面上放置一个RequiredFieldValidator 将Requir
  • 如何使 Tab 页的宽度适合 TabControl 的宽度

    我有一个带有两个选项卡页的 TabControl 如何使选项卡页适合 TabControl 的宽度 如下面的屏幕截图所示 我尝试使用以下代码行 但它也不起作用 tabControl1 SizeMode TabSizeMode FillToR
  • Java:检测变量是字符串还是整数

    我正在为我的一些家庭作业寻求一些帮助 我希望用户输入一个数字字符串 然后将其转换为整数 但我想创建一个循环来检测用户是否输入了错误的值 例如 一百 而不是 100 我的想法是做这样的事情 do numStr JOptionPane show