91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

處理一個數字加小數點的字符串

發布時間:2020-07-23 12:04:21 來源:網絡 閱讀:531 作者:卓行天下 欄目:開發技術

/*

 * 處理一個數字加小數點的字符串,前面無0,保留兩位。網上有循環截取的方法,如果數字過長,浪費內存,這個方法在優化內存的基礎上設計的。

 */

-(NSString*)getTheCorrectNum:(NSString*)tempString

{

    //先判斷第一位是不是 . , . 0

    if ([tempString hasPrefix:@"."]) {

        tempString = [NSString stringWithFormat:@"0%@",tempString];

    }

    //計算截取的長度

    NSUInteger endLength = tempString.length;

    //判斷字符串是否包含 .

    if ([tempString containsString:@"."]) {

        //取得 . 的位置

        NSRange pointRange = [tempString rangeOfString:@"."];

        NSLog(@"%lu",pointRange.location);

        //判斷 . 后面有幾位

        NSUInteger f = tempString.length - 1 - pointRange.location;

        //如果大于2位就截取字符串保留兩位,如果小于兩位,直接截取

        if (f > 2) {

            endLength = pointRange.location + 2;

        }

    }

    //先將tempString轉換成char型數組

    NSUInteger start = 0;

    const char *tempChar = [tempString UTF8String];

    //遍歷,去除取得第一位不是0的位置

    for (int i = 0; i < tempString.length; i++) {

        if (tempChar[i] == '0') {

            start++;

        }else {

            break;

        }

    }

    //如果第一個字母為 . start后退一位

    if (tempChar[start] == '.') {

        start--;

    }

    //根據最終的開始位置,計算長度,并截取

    NSRange range = {start,endLength-start};

   lablebalance.text = [tempString substringWithRange:range];

    return tempString;

}



//判斷只能顯示出兩位小數點

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

{

    //控制長度

    if(range.location>=20)

        return NO;

    

    const char * ch=[string cStringUsingEncoding:NSUTF8StringEncoding];

    if(*ch == 0)

        return YES;

    //字符09 .

    if( *ch != 46 && ( *ch<48 || *ch>57) )

        return NO;

    

    //有了小數點

    if([ lablebalance.text rangeOfString:@"."].length==1)

    {

        NSUInteger length=[lablebalance.text rangeOfString:@"."].location;

        

        

        

        //小數點后面兩位小數 且不能再是小數點

        if([[lablebalance.text substringFromIndex:length] length]>2|| *ch ==46)   //3表示后面小數位的個數。。

            

            return NO;

    }

    return YES;

}




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泾源县| 同江市| 资中县| 芦山县| 始兴县| 湘潭县| 桦南县| 朝阳市| 墨竹工卡县| 喀喇沁旗| 定州市| 漯河市| 双辽市| 定边县| 长兴县| 汉川市| 岗巴县| 保定市| 太仓市| 泰安市| 邵阳县| 万山特区| 手游| 怀安县| 晋江市| 咸丰县| 芜湖县| 和林格尔县| 闸北区| 大洼县| 海原县| 信宜市| 玉环县| 隆化县| 郁南县| 龙江县| 武威市| 亳州市| 体育| 乐陵市| 塔河县|