2017-06-02 22 views
0

在这里看到:The proper way to do exception handlingIntellij:通过IDE创建一个随机数用作错误号/错误代码?

说这个代码:

function changeBookAuthor(int $id, string $newName){ 
    if(!$newName){ 
    throw new MyAppException('No author name was provided'); 
    } 

    $book = Books::find($id); 

    if(!$book){ 
    throw new MyAppException('The provided book id could not be found'); 
    } 
//.. 
} 

我想改变这种状况到:

function changeBookAuthor(int $id, string $newName){ 
     if(!$newName){ 
     throw new MyAppException('No author name was provided', <SOMEVERYRANDOMNUMBER>); 
     } 

     $book = Books::find($id); 

     if(!$book){ 
     throw new MyAppException('The provided book id could not be found', <SOMEVERYRANDOMNUMBER>); 
     } 
    //.. 
    } 

的IntelliJ能帮助我在选择随机数?

回答

-1

因为你使用IntelliJ,所以我很喜欢你使用Java。

我环顾四周网上,我发现,您可以生成一个随机数是这样的:

import java.util.Random; 

Random random = new Random(); 
int randomInt = random.nextInt(10); 

这会产生0到9之间的随机数

您的最终代码如下:

import java.util.Random; 

function changeBookAuthor(int $id, string $newName){ 
    if(!$newName){ 

    Random random = new Random(); 
    int randomInt = random.nextInt(10); 

    throw new MyAppException('No author name was provided', randomInt); 
    } 

    $book = Books::find($id); 

    if(!$book){ 

    Random random = new Random(); 
    int randomInt = random.nextInt(10); 

    throw new MyAppException('The provided book id could not be found', randomINT); 
    } 
//.. 
} 

下面是网站,我从得到的信息:http://alvinalexander.com/blog/post/java/create-some-random-numbers

+0

它需要是一个静态数字 eg 1234或543535,任何东西。但不是代码! – Toskan

+0

我不知道你的意思是静态数 –

+0

比较'random.nextInt(10)'和'2352'你能发现一个区别吗?一个是代码,另一个是运行时的常数 – Toskan

0

我个人使用不同类型的异常而不是异常代码。

例如:

try{ 
    ... 
} catch (PDOException e1){ 
    // Show a message that we could not do SQL work 
} catch (NumberFormatException e2){ 
    // Show a message that input was not a valid number 
} catch (Exception e){ 
    // I'm not sure what was wrong but definitely there was some thing wrong 
} 

但是,如果你仍然想的随机数,去https://www.random.org,还有一些数生成器,复制值,并将其定义为在代码中的常数(我猜您正在使用PHP )

+0

每次都打开一个网站有点繁琐,不是吗?我害怕时间写我自己的插件... – Toskan