java try catch 输入字符串_java – 没有在try / catch中捕获NumberFormatException

解决JSP页面输入异常
本文探讨了在JSP页面中处理用户输入异常的方法。针对用户在整数字段输入字符串时引发的NumberFormatException问题,通过使用try/catch结构进行了有效的异常捕获与处理。

我正在创建一个.jsp页面的问题.对于那些担心的人来说,该网站是为了完成家庭作业,但是,我试图超越所需要的,并且不会要求任何与评分相关的内容.这完全是为了我自己的利益.

开展业务:

我从用户那里得到一个输入,执行方法=“发布”并刷新页面,并且在理想的情况下它可以工作(那是作业.)但是,我试图在这个案例中做一个try / catch块用户将字符串输入int字段的位置.

int Svolt = 0;

double Amperes = 0.0;

double LEDdrop = 0.0;

if (request.getParameter("Svolt") != null) {

try {

Svolt = Integer.parseInt(request.getParameter("Svolt"));

} catch ( NumberFormatException e ) {

%>

我已经尝试将“NumberFormatException”切换为“Exception”,但它返回了相同的错误代码.

早些时候,我在if()语句之前尝试了catch,它运行了,但是没有显示我想要的警告框.

该代码如下:

final double MA_TO_A = 0.001;

int Svolt = 0;

double Amperes = 0.0;

double LEDdrop = 0.0;

try {

if (request.getParameter("Svolt") != null) {

try {

Svolt = Integer.parseInt(request.getParameter("Svolt"));

} catch (Exception e)

{

%>

任何帮助表示赞赏,您的时间也是如此.非常感谢你!

编辑:

对不起,打算复制粘贴错误代码:

org.apache.jasper.JasperException: java.lang.NumberFormatException: For input string: "a"

测试输入为字符串“a”的位置

EDIT2:

备份/编辑/测试@ Nambari的建议

final double MA_TO_A = 0.001;

int Svolt = 0;

double Amperes = 20.0;

double LEDdrop = 1.8;

try {

if (request.getParameter("Svolt") != null) {

try {

Svolt = Integer.parseInt(request.getParameter("Svolt"));

} catch (Exception e)

{

%>

输出:

理想电阻为:-90.0欧姆

警报框说(“源电压必须是整数.请修复此问题.”)

没有out.println说(“请确保您的输入正确”).

最终编辑:

代码现在几乎按照需要工作,但足够好.

final double MA_TO_A = 0.001;

int Svolt;

double Amperes;

double LEDdrop;

if (request.getParameter("Svolt") != null)

{

try

{

try

{

Svolt = Integer.parseInt(request.getParameter("Svolt"));

} catch (Exception e)

{

%>

我知道很多术语,但那是最终的结果.不知何故,这一切都有效.感谢所有帮助过的人!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值