iOS之隨機字符串大小寫和數字

最近在給登錄密碼加密的時候用到了隨機字符串,就順手把這個方法記錄下來:

圖片來自網絡

一、全大小寫字母字符串

//32位全大寫字符串
+(NSString *)return32BigString;
//32位全小寫字符串
+(NSString *)return32LittleString;

實現方法:

//32位全大寫字符串
+(NSString *)return32BigString{
    
    char data[32];
    
    for (int x=0;x<32;data[x++] = (char)('A'+ (arc4random_uniform(26))));
    
    return [[NSString alloc] initWithBytes:data length:32 encoding:NSUTF8StringEncoding];
}

二、大小寫和數字字符串

//返回16位大小寫字母和數字
+(NSString *)return16LetterAndNumber;
//返回32位大小寫字母和數字
+(NSString *)return32LetterAndNumber;

實現方法

//返回16位大小寫字母和數字
+(NSString *)return16LetterAndNumber{
    //定義一個包含數字,大小寫字母的字符串
    NSString * strAll = @"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    //定義一個結果
    NSString * result = [[NSMutableString alloc]initWithCapacity:16];
    for (int i = 0; i < 16; i++)
    {
        //獲取隨機數
        NSInteger index = arc4random() % (strAll.length-1);
        char tempStr = [strAll characterAtIndex:index];
        result = (NSMutableString *)[result stringByAppendingString:[NSString stringWithFormat:@"%c",tempStr]];
    }
    
    return result;
}

三、隨機數的使用

//獲取一個隨機整數范圍:[0,200)包括0,不包括100
    int h = arc4random() %100;
    NSLog(@"h:%d",h);
    
    //獲取一個隨機數范圍在[600,700],包括600
    int b = 600 +arc4random() % 101;
    NSLog(@"b:%d",b);

如有不明白的,可以下載demo看:<a >HBBitString</a>

END.

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容