编程C,C ++,Java,PHP,Ruby,图灵,VB
计算机科学加拿大 
编程C,C ++,Java,PHP,Ruby,图灵,VB  

用户名:   Password: 
 登记登记   

 Wiki.Wiki.   博客博客   搜索搜索   图灵图灵   聊天室  成员成员 
 原始数据例外预防
指数 -> 编程,Java. -> java.提交
查看上一个主题 可打印的版本下载主题利率主题订阅本主题私人信息刷新页面 查看下一个主题
作者 信息
Randint.




邮政发布: 星期四2012年1月05日上午9:54  帖子主题:原始数据例外预防

偶尔一次,您遇到了一些需要使用Integer.parseint(String)的程序和将字符串转换为int的其他方法,但如果字符串不是,所有这些方法都具有抛出某种形式的异常的风险可加价的。尝试...捕获块不能循环,所以你没有解决方案?你正在使用的节目怎么样?那些告诉你一些东西不是有效的号码,让你再试一次吗?好吧,这里是我做了一个java程序我做了这个技巧(每次出现问题时都需要使用这个课程,并且使用do ...循环时,才会仅当布尔特命名为“validate”时设置为true您的循环可以退出并继续前进)。
此类的实现可以如下:
java.:

导入javax.swing。*;
上市 班级 Exponent
{
    上市 静止的 空白 主要的 (细绳 args[])
    {
        细绳基地= "0",power = "0";
        布尔基 b [] = 新的 布尔基 [2];
        双倍的 i [] = 新的 双倍的 [2];
       
        {
            base = JoptionPane..showinputdialog. (空值, “输入指数的基础”, “根据”, 1);
            power = JoptionPane..showinputdialog. (空值, “输入指数的力量”, “力量”, 1);
            DataTypeValidation.anymatedouble (根据);
            b [0] =数据删除。证实;
            i [0] =数据删除。双倍的;
            DataTypeValidation.anymatedouble (力量);
            b [1] =数据删除。证实;
            i [1] =数据删除。双倍的;
        }
        尽管 (!B. [0] || !B. [1]);
        JoptionPane..showMessageSialog. (空值, “答案是 ” + 数学. (i [0], 一世 [1]), “指数”, 1);
    }
}

注意该方法
java.:

vignateboolean. (细绳 valid)
{
}

只有Java版本为1.5或更高版本只能使用。



datatypevalidation.java.
 Description:
原始数据类型验证器

下载
 Filename:  datatypevalidation.java.
 Filesize:  1.68 KB
 Downloaded:  212 Time(s)

赞助
赞助
赞助
赞助
魔鬼




邮政发布: 星期四2012年1月5日上午10:20  帖子主题:Re:原始数据例外预防

err,try-catch块可以循环得很好。

java.:

布尔有效= false;
int价值;

尽管( ! valid ) {
    try {
       //在这里得到输入......
       value = integer.parseint.parseint.( input );
        valid = true;
    } catch (NumberFormatexception E.) {
        System.out.println ( "Invalid input: " + input );
    }
}


你在哪里得到一个想法?

但是,是的,有很多方法验证输入,你发现另一个肯定有效。
Randint.




邮政发布: 星期四2012年1月5日11:25 AM  帖子主题:实施

以下是一件事,如果您每次越来越几次或数百个输入,您需要大量的布尔值...是的,我的使用方式循环验证是野蛮的,它滥用程序员使用DO循环对于每个输入。
魔鬼




邮政发布: 星期四2012年1月5日11:38 AM  帖子主题:Re:原始数据例外预防

不,您需要一个布尔,以方法包裹。理想情况下,要提示多个整数,您会做一些这样的事情:

java.:

int foo = userprompt.integer( "Enter foo value: " );
int bar = userprompt.integer( "Enter bar value: " );
int baz = userprompt.integer( "Enter baz value: " );


......或者其他,这取决于你和你的申请。但是你应该只需要编写一次循环,一个标志变量;疯狂的任何东西都是什么。
从上一个显示帖子:   
   指数 -> 编程,Java. -> java.提交
查看上一个主题 告诉一个朋友可打印的版本下载主题利率主题订阅本主题私人信息刷新页面 查看下一个主题

11  [ 4 Posts ]
跳到:   


Style:  
搜索: