Ir para conteúdo
  • 0

[Resolvido] [Dúvida] StringBuilder


PlaayZone

Pergunta

Galera como eu faço para setar na config em uma lista uma frase que o player digitou ? tipo eu uso /addmensagem mensagem

e essa mensagem vai ser adicionada na config em uma lista, que depois vai ser lida automaticamente tipo um auto mensagem

Link para o comentário
Compartilhar em outros sites

20 respostass a esta questão

Posts Recomendados

List<String> mensagens = getConfig().getStringList("Mensagens");

StringBuilder sb = new StringBuilder();
for (int i = 0; i < args.length; i++) {
    sb.append(args[i]).append(" ");
}
String msg = sb.toString().trim();

mensagens.add(msg);
getConfig().set("Mensagens", mensagens);
saveConfig();

Juntas os exemplos acima fica mais ou menos isso!

Link para o comentário
Compartilhar em outros sites

Galera como eu faço para setar na config em uma lista uma frase que o player digitou ? tipo eu uso /addmensagem mensagem

e essa mensagem vai ser adicionada na config em uma lista, que depois vai ser lida automaticamente tipo um auto mensagem

 

Você tem que fazer um for pra percorrer todos os argumentos do comando..

 

Exemplo:

List<String> mensagens = getConfig().getStringList("Mensagens");

String msg "";
for (int i = 0; i < args.length; i++){
    msg = args[i];
}
mensagens.add(msg);

getConfig().set("Mensagens", mensagens);
saveConfig();
Link para o comentário
Compartilhar em outros sites

Área errada meu jovem, área correta: Programação > Java >Dúvidas

 

Bom, caso esteja falando em relação a StringList tem formas mais praticas de fazer, exemplo:

List<String> mensagens = getConfig().getStringList("Mensagens");

String msg = null;
for(int i = 0; i < args.lenght; i++){
	if(msg == null){
		msg = args[i];
	}else{
		msg += args[i];
	}
}

mensagens.add(msg);
getConfig().set("Mensagens", mensagens);
saveConfig();

Também tem como fazer com StringBuilder

Link para o comentário
Compartilhar em outros sites

Área errada meu jovem, área correta: Programação > Java >Dúvidas

 

Bom, caso esteja falando em relação a StringList tem formas mais praticas de fazer, exemplo:

List<String> mensagens = getConfig().getStringList("Mensagens");

String msg = null;
for(int i = 0; i < args.lenght; i++){
	if(msg == null){
		msg = args[i];
	}else{
		msg += args[i];
	}
}

mensagens.add(msg);
getConfig().set("Mensagens", mensagens);
saveConfig();

Também tem como fazer com StringBuilder

Você poderia me dizer como eu faço com string builder ? porque quando eu seto como vocês passaram o primeiro ele seta sempre nada, ou então só 1, já na 2 ele adiciona a frase sem espaço e só vai 1 tambem.

Link para o comentário
Compartilhar em outros sites

Você poderia me dizer como eu faço com string builder ? porque quando eu seto como vocês passaram o primeiro ele seta sempre nada, ou então só 1, já na 2 ele adiciona a frase sem espaço e só vai 1 tambem.

 

StringBuilder sb = new StringBuilder();
for (int i = 0; i < args.length; i++) {
    sb.append(args[i]).append(" ");
}
String msg = sb.toString().trim();
Editado por єxтяαρlαyร
Link para o comentário
Compartilhar em outros sites

List<String> mensagens = getConfig().getStringList("Mensagens");

StringBuilder sb = new StringBuilder();
for (int i = 0; i < args.length; i++) {
    sb.append(args[i]).append(" ");
}
String msg = sb.toString().trim();

mensagens.add(msg);
getConfig().set("Mensagens", mensagens);
saveConfig();

Juntas os exemplos acima fica mais ou menos isso!

 

if(cmd.getName().equalsIgnoreCase("addmsg")) {
if(a.length <=0) {
p.sendMessage("§cUso: /addmsg mensagem");
return true;
}
List<String> broad = GerenciadorDeArquivos.carregar().obterBroadcast().getStringList("Automsg");
StringBuilder sb = new StringBuilder();
for(int i = 0; i<a.length;i++) {
sb.append(a).append(" ");
}
    String msg = sb.toString().trim();
broad.add(msg);
GerenciadorDeArquivos.carregar().obterBroadcast().set("AutoMsg", broad);
GerenciadorDeArquivos.carregar().salvarBroadcast();
 
 
p.sendMessage("teste");
return true;
}
 
To usando assim
Link para o comentário
Compartilhar em outros sites

 

if(cmd.getName().equalsIgnoreCase("addmsg")) {
if(a.length <=0) {
p.sendMessage("§cUso: /addmsg mensagem");
return true;
}
List<String> broad = GerenciadorDeArquivos.carregar().obterBroadcast().getStringList("Automsg");
StringBuilder sb = new StringBuilder();
for(int i = 0; i<a.length;i++) {
sb.append(a).append(" ");
}
    String msg = sb.toString().trim();
broad.add(msg);
GerenciadorDeArquivos.carregar().obterBroadcast().set("AutoMsg", broad);
GerenciadorDeArquivos.carregar().salvarBroadcast();
 
 
p.sendMessage("teste");
return true;
}
 
To usando assim

 


if(a.length <=0) {

}

Coloca pra verificar se o argumento for menor que 0

 

porque no for você ta pegando o argumento 0

for(int i = 0; i < a.length; i++) {     
    sb.append(a[i]).append(" ");
}

e testa pra ver se vai dar...

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...