1. 程式人生 > >產生隨機訂單號

產生隨機訂單號

- (NSString *)generateTradeNumber

{

    staticint kNumber =15;

    //由大寫字母和數字組成

    NSString *sourceStr =@"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

//可變字串物件

    NSMutableString *resultStr = [[NSMutableString  alloc]init];

/*

0呼叫時間函式time(),將其返回值強制轉換為unsigned型,作為引數來呼叫srand( )函式。

     srand( )是為rand( )

函式初始化隨機發生器的啟動狀態,以產生偽隨機數,所以常把srand( )稱為種      子函式。

time()返回的時間值做種子的原因是time()返回的是實時時間值,每時毎刻都在變化,這樣產生的偽隨機數就有以假亂真的效果。

     */

    srand((unsigned)time(0));

//15位隨機數

for (int i =0; i < kNumber; i++)

{

//隨機數的索引位置

     unsigned index =rand() % [sourceStr  length];

    //提取隨機數索引位置處的字元

//substringWithRange

需要傳進來NSRange型別,表示從哪裡開始擷取和長度,返回字串型別。

    NSString *oneStr = [sourceStr  substringWithRange:NSMakeRange(index,1)];

//追加到訂單字串

    [resultStr  appendString:oneStr];

}

return resultStr;

}