【问题标题】:How to prompt the user to input information and then print results using the keyboard class method?如何使用键盘类方法提示用户输入信息然后打印结果?
【发布时间】:2016-09-25 23:44:05
【问题描述】:

我是 Java 新手,正在使用字符串、键盘类方法和扫描仪处理 Java 分配。我不确定在不同情况下使用哪个。我必须提示用户输入他们的城市和州,并且必须打印出一个结果,以大写形式打印出他们的州,以小写形式打印出城市,然后以大写形式再次声明。作业的问题在这里:

声明两个字符串类型的新变量城市和状态。在程序中添加语句以提示用户输入他们的家乡——城市和州。使用适当的键盘类方法读入结果。然后使用 String 类方法 创建并打印一个新字符串,该字符串由州名(全部为大写字母)后跟城市名(全部为小写字母)后跟州名(大写)组成.因此,如果用户输入城市的 Lilesville 和州的 North Carolina,程序应该创建并打印字符串: 北卡罗来纳州莱尔斯维尔北卡罗来纳州

我的代码:

import java.util.Scanner;



int city, state;
Scanner scan = new Scanner (System.in);
System.out.println ("Enter your hometown city:");
city = scan.nextInt();

System.out.println ("Enter your hometown state:");
state = scan.nextInt();

当我运行程序时,我输入了城市,然后我收到一个运行时错误。编译器说:

"java.util.InputMismatchException: 空(在 java.util.Scanner 中)"

最后,我要问的最后一个问题是如何使用键盘类方法读取结果,以及如何使用字符串类方法打印类似“NORTH CAROLINAlilesvilleNORTH CAROLINA”(EX) 的内容。 如果您对我所说的任何内容感到困惑,我深表歉意,我感谢所涉及的所有帮助。非常感谢您。

【问题讨论】:

  • int 更改为 String。您的 Scanner 对象正在寻找整数,但您给它的是字符串。

标签: java string keyboard java.util.scanner


【解决方案1】:

您得到的 MisMatch 异常是因为您使用了不正确的数据类型。 state 和 city 被声明为 int 但您输入的是名称。

因此,而不是 int ,将 state 和 city 声明为 string 并使用 scan.nextLine() 而不是 scan.nextInt()。

【讨论】:

  • 好吧,这是有道理的。声明后如何初始化字符串?声明城市和州时,我的代码会是什么样子?我将如何读取结果以及使用哪种键盘类方法?再次感谢你的帮助。抱歉,问题数量如此之快。
  • 其实我认为我不需要初始化,因为当我编译它时,它工作正常。我只是不知道如何使用字符串类方法返回 STATEcitySTATE。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-17
  • 2023-02-23
  • 1970-01-01
  • 2021-10-03
  • 1970-01-01
  • 2020-09-25
  • 1970-01-01
相关资源
最近更新 更多