Os problemas de entrada e verificação de parâmetros são frequentemente encontrados durante o desenvolvimento. Os métodos de verificação geral são os seguintes:
public Bool Register (nome da string, Int Age) {if (string.isnullorEmpty (nome)) {tiro new argumentException ("nome não deve estar vazio", "nome"); } if (idade <10 || idade> 70) {lança a nova argumento ("a idade deve entre 10 e 70", "idade"); } // ...}Quando a demanda muda, há muitos códigos correspondentes a serem alterados, o que é mais problemático. Recentemente, entrei em contato com dois métodos convenientes de verificação de parâmetros em Java e C#. Deixe -me dar uma breve introdução.
Verificação de parâmetros Java:
Use uma classe auxiliar sob a goiaba do Google:
importar com.google.common.base.preconditions;
Código de exemplo:
public static void checkPersonInfo (Int Age, String Name) {pré -condiciona.checkNotNull (Nome, "Nome Is NULL"); Pré -condições.checkargument (name.length ()> 0, "O comprimento do nome deve ser maior que 0"); Pré -condições.CHECKARGEMGEM (IDADE> 0, "A idade deve ser maior que 0"); System.out.println ("uma pessoa idade:" + idade + ", nome:" + nome); } public static void getPostCode (String Code) {pré -condiciona.checkargument (checkpostcode (código), "o código ZIP não atende aos requisitos"); System.out.println (código); } public static void main (string [] args) {try {checkPersonInfo (10, "fdsfsd"); checkPersonInfo (10, nulo); checkPersonInfo (-10, "FDSFSD"); getPostCode ("012234"); } catch (Exceção e) {e.printStackTrace (); }}Quando os parâmetros não atendem aos requisitos, lançam informações de exceção e as informações transportadas na exceção são a string personalizada posteriormente, o que torna a escrita muito mais conveniente.
C# Verificação de parâmetros:
Use FluentValidation Como biblioteca de classes, o endereço de referência está abaixo.
Como usar:
Uma aula de pessoa simples:
public class Pessoa {Nome da String Public {Set; pegar; } public int Age {set; pegar; } pessoa pública (nome da string, int age) {name = name; Idade = idade; }}Classe de verificação da pessoa:
public class PessoaValidator: AbstractValidator <Sesso> {public PersonValidator () {regra (x => x.name) .NotEmpty (). WithMessage ("Nome não pode estar vazio"); Regra (x => x.name) .Length (1,50) .WithMessage ("O caractere de nome não pode exceder 50"); Regra (x => x.age) .Greaterthan (0) .WithMessage ("A idade deve ser maior que 0"); } private bool válidaName (nome da string) {// Nome personalizado A lógica de validação vai aqui retorna true; }}usar:
classe Program {estático void main (string [] args) {pessoa cliente = nova pessoa (null, -10); PersonValidator Validator = new PersonValidator (); ValidationResult Results = validator.validate (cliente); validação boolCEDEDED = Results.IsValid; Ilist <alalalationFailure> falhas = resultados.errors; foreach (falha no var nas falhas) {console.WriteLine (falha.errorMessage); } Console.readKey (); }}Documentação para FluentValidation: http://fluentvalidation.codeplex.com/documentation
O exposto acima é todo o conteúdo do método de verificação de parâmetros em Java e C# trazido a você pelo editor. Espero que seja útil para todos e apoie mais wulin.com ~