Ir para conteúdo
  • 0

[Resolvido] Argumentos com números


Artcheer

Pergunta

Eae Pessoal!

Postei um tópico com uma duvida parecida mais n consegui resolver.

Enfim, preciso fazer com que um argumento de um comando receba um inteiro e que depois multiplique esse inteiro por 20 e coloque esse valor em uma variável pra eu poder usar depois.

 

Exemplo:

/ganharbolo 2

Esse dois seria o argumento mais como não é um argumento tipo "start/stop" eu n sei como fazer.

nesse caso seria tipo pegar esse 2 (ou qualquer outro numero digitado apos o "ganharbolo") e multiplica por 20 e, esse resultado ser colocado numa variável.

 

Espero que tenham entendido =D 

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

Primeiramente, tem que verificar se é um número, utilize este método:

public boolean isNum(String string){
	try{
		Integer.parseInt(string);
		return true;
	}catch(Exception e){return false;}
}

Depois verifique se o argumento é inteiro, se for, faça a multiplicação.

if(isNum(args[0])){
    int numero = Integer.parseInt(args[0])*20;
}
Link para o comentário
Compartilhar em outros sites

 

Primeiramente, tem que verificar se é um número, utilize este método:

public boolean isNum(String string){
	try{
		Integer.parseInt(string);
		return true;
	}catch(Exception e){return false;}
}

Depois verifique se o argumento é inteiro, se for, faça a multiplicação.

if(isNum(args[0])){
    int numero = Integer.parseInt(args[0])*20;
}

No caso a varivel "numero" terá o resultado da mutiplicação ? E isso?

Link para o comentário
Compartilhar em outros sites

	public boolean onCommand(CommandSender Sender, Command Command, String Label, String[] Arguments){

if(Command.getName().equalsIgnoreCase("ganharbolo"))

if(Arguments.length >= 1)

try{

int i = Integer.parseInt(Arguments[0]) * 20;

}catch(NumberFormatException Error){

Sender.sendMessage("§cIsso Não é um Número!");

}

else Sender.sendMessage("§cUse /ganharbolo [Número]");

return true;

}

Link para o comentário
Compartilhar em outros sites

 

try {
	argumento = Integer.valueOf(args[0]);
	resultado = arguemento * 20
	//CONTINUAÇÃO DO TEU CODIGO
} catch (NumberFormatException e) {
	//mensagem de erro, se o argumento não for um numero
	return false;
}

 

Seu Código não Funciona, Primeiro que valueOf além de ser bem obsoleto, não retorna NumberFormatException, só parseInt

@EDIT: Fui Checar e Descobri que Redirecionaram o valueOf pro parseInt, então é a mesma merda

@EDIT2: A Diferença é que o valueOf Retorna uma Integer, que suporta valores nulo, então pode bugar seu plugin se alguém não digitar nada

Editado por Coe
Link para o comentário
Compartilhar em outros sites

Seu Código não Funciona, Primeiro que valueOf além de ser bem obsoleto, não retorna NumberFormatException, só parseInt

@EDIT: Fui Checar e Descobri que Redirecionaram o valueOf pro parseInt, então é a mesma merda

@EDIT2: A Diferença é que o valueOf Retorna uma Integer, que suporta valores nulo, então pode bugar seu plugin se alguém não digitar nada

kk nem sabia, mas se a pessoa não digitar nada, o numero de argumento é menor, como pode bugar? tipo /bolo 1 " " 2   ?

Link para o comentário
Compartilhar em outros sites

	public boolean onCommand(CommandSender Sender, Command Command, String Label, String[] Arguments){
		if(Command.getName().equalsIgnoreCase("ganharbolo"))
			if(Arguments.length >= 1)
				try{
					int i = Integer.parseInt(Arguments[0]) * 20;
				}catch(NumberFormatException Error){
					Sender.sendMessage("§cIsso Não é um Número!");
				}
			else Sender.sendMessage("§cUse /ganharbolo [Número]");
		return true;
	}

 

 

 

 

Primeiramente, tem que verificar se é um número, utilize este método:

public boolean isNum(String string){
	try{
		Integer.parseInt(string);
		return true;
	}catch(Exception e){return false;}
}

Depois verifique se o argumento é inteiro, se for, faça a multiplicação.

if(isNum(args[0])){
    int numero = Integer.parseInt(args[0])*20;
}

 

Vlw a todos que me ajudaram , vcs são demais !.

Esses dois acima que resolveram o meu problema um ganha 1 curti e outro 1 resolvido :p

Link para o comentário
Compartilhar em outros sites

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