gerarNomeAleatorio static method
Gera um nome aleatório com opções personalizáveis.
Esta função gera um nome aleatório com base nas opções fornecidas. Os parâmetros opcionais permitem controlar o gênero do nome gerado, se o nome é composto ou não, e se o sobrenome deve ser único.
Parâmetros:
sobrenomeUnico
: Define se o sobrenome deve ser único. O valor padrão éfalse
.nomeComposto
: Define se o nome deve ser composto. O valor padrão éfalse
.masculino
: Define se o nome gerado pode ser masculino. O valor padrão étrue
.feminino
: Define se o nome gerado pode ser feminino. O valor padrão étrue
.
Retorna: Um String contendo o nome aleatório gerado.
Exemplo:
String nome = gerarNomeAleatorio();
print(nome); // Exemplo de saída: "João Silva"
Implementation
static StringList gerarNomeAleatorio({bool sobrenomeUnico = false, bool nomeComposto = false, bool masculino = true, bool feminino = true}) {
if (masculino == false && feminino == false) {
masculino = randomBool();
feminino = !masculino;
}
var l = nomesComuns;
if (masculino == false) l = nomesFemininosComuns;
if (feminino == false) l = nomesMasculinosComuns;
var s1 = sobrenomesComuns[randomInt(0, sobrenomesComuns.length)];
var s2 = sobrenomesComuns[randomInt(0, sobrenomesComuns.length)];
var n1 = l[randomInt(0, l.length)];
var n2 = l[randomInt(0, l.length)].blankIf((s) => nomeComposto == false || randomBoolWithFactor(30) || n1 == s);
if (randomBool() || s1 == s2 || sobrenomeUnico) s2 = "";
return [
[n1, n2].whereValid.join(" "),
[s1, s2].whereValid.join(" ")
];
}