大量 if 语句的快速替代方案

2023-11-27

我是java初学者,我正在制作一个简单的程序,在其中输入一些内容,如果我输入的内容与“数据库”上的其中一个内容匹配,那么它会打印一些文本。有没有比这样做更简单的方法来检查这一点:

int 1;
int 2;
int 3;

etc.

if([USER INPUT].equals("1")) {
    System.out.println("TEST");
}

400次。


使用 switch 语句或 HashMap。

Switch 语句:可读,但编译方式与 if-else 链类似(如果不相同)。

switch([USER_INPUT]) {
    case 1:
        System.out.println("TEST");
        break;
    case 2:
        System.out.println("HELLO");
        break;
    // And so on.
}

Hash Map:更具可读性和更简单。这是优选的。

// Initialization.
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1,"TEST");
map.put(2,"HELLO");

// Printing.
String s = map.get(USER_INPUT);
if (s == null)
    System.out.println("Key doesn't exist.");
System.out.println(s);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大量 if 语句的快速替代方案 的相关文章

  • 将 jar 作为 Linux 服务运行 - init.d 脚本在启动应用程序时卡住

    我目前正在致力于在 Linux VM 上实现一个可运行的 jar 作为后台服务 我已经使用了找到的例子here https gist github com shirish4you 5089019作为工作的基础 并将 start 方法修改为
  • Android 2.2 SDK - Droid X 相机活动无法正常完成

    我注意到我在 Droid X 上调用的默认相机活动与我的 Droid 和 Nexus One 上的默认相机活动看起来不同 在 Droid 和 Nexus One 上选择 确定 后 活动将完成 Droid X 有一个 完成 按钮 它将带您返回
  • 如果在睡眠线程上调用interrupt()会发生什么?

    我有一个线程 然后run I call sleep 如果我中断这个线程会发生什么 MyThread extends Thread public void run try sleep 1000000 catch InterruptedExce
  • 如何使用 SimpleDateFormat 解析多种格式的日期

    我正在尝试解析文档中的一些日期 用户似乎以类似但不完全相同的格式输入了这些日期 以下是格式 9 09 9 2009 09 2009 9 1 2009 9 1 2009 尝试解析所有这些内容的最佳方法是什么 这些似乎是最常见的 但我想让我困扰
  • 对话框上的 EditText 不返回任何文本

    我太累了 找不到错误 我没有发现任何错误 但我没有从 editText 收到任何文本 请看下面的代码 活动密码 xml
  • 来自数据库的 jfreechart 散点图

    如何使用java中的jfreechart绘制mysql数据库表中数据的散点图 我使用过 Swing 库 任何链接都会有帮助 我搜索了谷歌但找不到理解的解决方案 如果您有代码 请提供给我 实际上我确实做了条形图并使用 jfreechart 绘
  • Android 自定义视图不能以正确的方式处理透明度/alpha

    我正在绘制自定义视图 在此视图中 我使用两个不同的绘画和路径对象在画布上绘画 我基本上是在绘制两个重叠的形状 添加 Alpha 后 视图中重叠的部分比图像的其余部分更暗 这是不希望的 但我不知道如何解决它 这是我的代码片段 用于展示我如何在
  • 如何在 JSP 中导入类?

    我是一个完全的JSP初学者 我正在尝试使用java util List在 JSP 页面中 我需要做什么才能使用除以下类之外的类java lang 使用以下导入语句进行导入java util List 顺便说一句 要导入多个类 请使用以下格式
  • 使用 RecyclerView 适配器在运行时更改布局屏幕

    我有两个布局文件 如下所示 如果列表中存在数据 则我显示此布局 当列表为空时 我会显示此布局 现在我想在运行时更改布局 当用户从列表中删除最后一项时 我想将布局更改为第二张图片中显示的 空购物车布局 In getItemCount Recy
  • Java套接字:在连接被拒绝异常时重试的最佳方法?

    现在我正在这样做 while true try SocketAddress sockaddr new InetSocketAddress ivDestIP ivDestPort downloadSock new Socket downloa
  • 如何让spring为JdbcMetadataStore创建相应的schema?

    我想使用此处描述的 jdbc 元数据存储 https docs spring io spring integration docs 5 2 0 BUILD SNAPSHOT reference html jdbc html jdbc met
  • Java:正则表达式排除空值

    在问题中here https stackoverflow com questions 51359056 java regexp for a separated group of digits 我得到了正则表达式来匹配 1 到 99 之间的一
  • Git 无法识别重命名和修改的包文件

    我有一个名为的java文件package old myfile java 我已经通过 git 提交了这个文件 然后我将我的包重命名为new所以我的文件在package new myfile java 我现在想将此文件重命名 和内容更改 提交
  • 无法加载或查找主类,可以在命令行中使用,但不能在 IDE 中使用[重复]

    这个问题在这里已经有答案了 在将其标记为重复之前 请先听我说完 我正在尝试使用 gradle 导入一个 java 项目 功能齐全 适用于所有其他笔记本电脑 没有问题 我的项目 100 正常运行 适用于所有其他笔记本电脑 当我的笔记本电脑被重
  • 如何配置 WebService 返回 ArrayList 而不是 Array?

    我有一个在 jax ws 上实现的 java Web 服务 此 Web 服务返回用户的通用列表 它运行得很好 Stateless name AdminToolSessionEJB RemoteBinding jndiBinding Admi
  • Android AutoCompleteTextView 带芯片

    我不确定我是否使用了正确的词语来描述此 UI 功能 但我已附上我希望在我的应用程序中实现的目标的快照 它由 Go SMS 使用 用户在编辑文本中键入联系人 在用户从完成下拉列表中选择联系人后 该联系人将被插入到编辑文本中 如附图所示 编辑文
  • 在android中跟踪FTP上传数据?

    我有一个运行 Android 的 FTP 系统 但我希望能够在上传时跟踪字节 这样我就可以在上传过程中更新进度条 安卓可以实现这个功能吗 现在 我正在使用org apache common net ftp我正在使用的代码如下 另外 我在 A
  • Java &= 运算符应用 & 或 && 吗?

    Assuming boolean a false 我想知道是否这样做 a b 相当于 a a b logical AND a is false hence b is not evaluated 或者另一方面 这意味着 a a b Bitwi
  • 嵌入式 Jetty - 以编程方式添加基于表单的身份验证

    有没有一种方法可以按如下方式以编程方式添加基于表单的身份验证 我用的是我自己的LdapLoginModule 最初我使用基本身份验证并且工作正常 但现在我想在登录页面上进行更多控制 例如显示徽标等 有没有好的样品 我正在使用嵌入式 jett
  • JAXB - 列表<可序列化>?

    我使用 xjc 制作了一些课程 public class MyType XmlElementRefs XmlElementRef name MyInnerType type JAXBElement class required false

随机推荐

  • 在64位linux上从32位模式切换到64位(长模式)

    我的程序在 x86 64 CPU 64位操作系统 ubuntu 8 04 上以32位模式运行 是否可以在用户模式下暂时切换到64位模式 长模式 如果是这样 怎么办 背景故事 我正在编写一个与32位模式程序链接的库 因此它在启动时必须是32位
  • React/TypeScript - “Dispatch>”代表什么?

    我正在用 TypeScript 编写 React 组件的前端测试 由于代码来自更有经验的程序员 因此某些数据类型对我来说似乎有点新 现在我有了一个使用 Dispatch 作为数据类型定义的道具 我注意到使用 useState Hook 的
  • 使用 css3 反转边框半径[重复]

    这个问题在这里已经有答案了 自从 3 小时以来 我一直在尝试寻找如何反转边框半径 我在 css3 中看到了专门为此目的的一个小代码 但我找不到它 你一定知道我正在使用 wordpress 不幸的是 有想法吗 如果您的选项卡具有纯色背景色 您
  • vim 折叠搞乱了语法高亮

    我使用 vim 作为 LaTeX 并且使用 Latex suite 它为我提供了很好的语法突出显示和折叠 但在大文件中 语法突出显示变得 混乱 如果我打开所有折叠 语法突出显示就会正常 但我希望它始终 正常工作 我似乎记得一个选项会增加用作
  • 如何查询 Active Directory 对象的有效权限?

    我试图以编程方式确定当前用户是否对给定的 Active Directory 对象具有某些权限 特别是在本例中 我试图确定用户是否具有其他 Exchange 用户或通讯组列表对象的 发送为 权限 我已经弄清楚如何访问ntSecurityDes
  • 如何从充当服务器的 iPhone 流式传输视频?

    我正在开发一款适用于 iOS 的应用程序 其中一台 iPhone 必须将其摄像头录像实时传输到另一台 iPhone 为简单起见 两台 iPhone 都位于同一个 Wi Fi 网络中 流媒体应该可以工作without物理互连 例如用于将流路由
  • 对通用 Java 类中的通用变量使用数学运算符

    我正在尝试编写一些代码 使我能够对 T extends Number 对象实例执行基本数学运算 它需要能够处理任何数字类型的子类Number 我知道下面的一些类型Number have add 内置方法 有些甚至有 multiply 方法
  • 转发声明未命名结构的 typedef [重复]

    这个问题在这里已经有答案了 可能的重复 未命名结构的前向声明 如果我有 typedef struct tagPAGERANGE int iFirstPage int iLastPage PAGERANGE 我可以这样转发声明 struct
  • 在 Windows Phone 8.1 中共享渲染到位图图像

    我想在 Windows Phone 8 1 中将画布作为图像共享 为此 我首先将画布转换为图像 然后共享它 我尝试了我的 Windows 8 1 代码 没有发生错误 但共享源应用程序中没有图像 仅出现描述和标题 这是代码 private a
  • 这是一个指向数组开头的指针吗?

    我刚刚帮助某人编写了一些代码 他有这个 char dataArray 10 然后想要获取指向数组开头的指针 而不是使用 dataArray 0 or just dataArray He used dataArray 他最终得到了一个指向指针
  • SP2010 客户端对象模型 3 MB 限制 - 未应用更新 maxReceivedMessageSize

    我正在使用客户端对象模型与 Sharepoint 2010 进行交互 当我尝试使用客户端 OM 上传大于 3 MB 的文档时 出现错误请求错误 微软建议this解决问题 我尝试过并更新了 maxReceivedMessageSize 属性
  • Django Rest Framework - 当尝试使用不正确的凭据登录用户时,为什么会返回 200 状态代码?

    这是我的 URLs py url r api auth include rest framework urls namespace rest framework 我的主页上有一个表单 用户可以在其中输入用户名和密码 单击提交按钮时 Angu
  • 如何在 C++ 中声明全局变量

    我知道不应该使用全局变量 但我需要它们 我读过 在函数外部声明的任何变量都是全局变量 我已经这样做了 但在另一个 cpp文件中 找不到该变量 所以它并不是真正的全球性 是不是得建立一个头文件GlobalVariabels h并将该文件包含到
  • Google Sheets API:调用者没有权限

    我正在尝试从 cron 中读取文档 https sheets googleapis com v4 spreadsheets
  • 查看网页生成源的最佳方式?

    我正在寻找一个工具 它可以为我提供正确的生成源 包括由 AJAX 请求输入到 W3 验证器中所做的 DOM 更改 我尝试过以下方法 网页开发者工具栏 根据文档类型生成无效源 例如 它删除标签的自关闭部分 丢失页面的文档类型部分 Firebu
  • Pandas 左外连接结果表大于左表

    根据我对左外连接的理解 结果表的行数不应多于左表的行数 如果这是错误的 请告诉我 我的左表有 192572 行和 8 列 我的右表有 42160 行和 5 列 我的左表有一个名为 id 的字段 它与右表中名为 key 的列匹配 因此我将它们
  • 合并相同键的值

    可以用吗awk将相同键的值放入一行 例如 a 100 b 200 a 131 a 102 b 203 b 301 我可以将它们转换为这样的文件吗 a 100 131 102 b 200 203 301 您可以像这样使用 awk awk F
  • Google plus客户端“发生内部错误”[重复]

    这个问题在这里已经有答案了 昨天 当我尝试在我的应用程序中使用 Google Plus 签署用户时 我开始收到 发生内部错误 我使用得很好并且没有更改 代码已经很长时间没有改变了 GmsClient回报 connect bindServic
  • Azure 上的 Django 不加载静态文件

    我按照下面的教程在azure上创建了一个django项目 http www windowsazure com en us develop python tutorials web sites with django 一切正常 直到我尝试安装
  • 大量 if 语句的快速替代方案

    我是java初学者 我正在制作一个简单的程序 在其中输入一些内容 如果我输入的内容与 数据库 上的其中一个内容匹配 那么它会打印一些文本 有没有比这样做更简单的方法来检查这一点 int 1 int 2 int 3 etc if USER I