前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Swift 银行卡号验证

Swift 银行卡号验证

作者头像
星宇大前端
发布2019-10-25 09:20:56
1.2K0
发布2019-10-25 09:20:56
举报
文章被收录于专栏:大宇笔记

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/ZY_FlyWay/article/details/95612473

代码语言:javascript
复制
//  Converted to Swift 4 by Swiftify v4.2.40307 - https://objectivec2swift.com/
func checkBankCardNumber(_ cardNumber: String?) -> Bool {
    var oddSum: Int = 0 // 奇数和
    var evenSum: Int = 0 // 偶数和
    var allSum: Int = 0 // 总和
    // 循环加和
    for i in 1...(cardNumber?.count ?? 0) {
        let theNumber = (cardNumber as NSString?)?.substring(with: NSRange(location: (cardNumber?.count ?? 0) - i, length: 1))
        var lastNumber = Int(truncating: theNumber ?? "") ?? 0
        if i % 2 == 0 {
            // 偶数位
            lastNumber *= 2
            if lastNumber > 9 {
                lastNumber -= 9
            }
            evenSum += lastNumber
        } else {
            // 奇数位
            oddSum += lastNumber
        }
    }
    allSum = oddSum + evenSum
    // 是否合法
    if allSum % 10 == 0 {
        return true
    } else {
        return false
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档