首页 > 解决方案 > 在 kotlin 中验证名称

问题描述

我的问题是用户插入了一个像“Jon Snow”这样的名字,我不知道如何用函数验证名字的第一个字符是大写的,如果它们是空格的话

fun checkName(nome:String):Boolean{
    if (name[0].isUpperCase()){
        var count=0
        //if (nome)
        do {
            count++

        }while (name[count]==' ')
        var charAfterSpace:Char=nome[count]+1
        when(charAfterSpace.isUpperCase()){
           false->return false
            //else->return true
        }
    }
    return false
}

标签: functionkotlin

解决方案


拆分字符串,然后检查所有元素是否符合条件:

fun checkName(name: String): Boolean =
    name.split(' ').all { it[0].isUpperCase() }

如果双空格可能是一个问题,那么首先检查以确保它不是空的:

fun checkName(name: String): Boolean =
    name.split(' ').all { !it.isEmpty() && it[0].isUpperCase() }

推荐阅读