Como voce implementaria isso?

5 respostas
benflodin

Olá Pessoal,
encontrei um trexo de codigo interessante e gostaria de saber como voces implementariam isso ?

public String mulambo(int i) { Vector v = new Vector(); v.add("a"); v.add("b"); v.add("c"); v.add("d"); v.add("e"); v.add("f"); v.add("g"); v.add("h"); v.add("i"); v.add("j"); v.add("k"); v.add("l"); v.add("m"); v.add("n"); v.add("o"); v.add("p"); v.add("q"); v.add("r"); v.add("s"); v.add("t"); v.add("u"); v.add("v"); v.add("w"); v.add("x"); v.add("y"); v.add("z"); v.add("aa"); v.add("ab"); v.add("ac"); v.add("ad"); v.add("ae"); v.add("af"); v.add("ag"); v.add("ah"); v.add("ai"); v.add("aj"); v.add("ak"); v.add("al"); v.add("am"); v.add("an"); v.add("ao"); v.add("ap"); v.add("aq"); v.add("ar"); v.add("as"); v.add("at"); v.add("au"); v.add("av"); v.add("aw"); v.add("ax"); v.add("ay"); v.add("az"); return (String)v.get(i); }

Hahahhhahaha!!!

5 Respostas

T

Realmente isso é código “molambento” mesmo.

private static final String[] valores = {
    "a", "b", ...., "ay"
};

public String mulambo (int i) {
    return valores[i];
}
A

Ou então:

import java.util.Arrays;
import java.util.List;
//...

List<String> valores = Arrays.asList("a", "b", ..., "ay");
public String mulambo(int i) {
   return valores.get(i);
}
nilolima

Rapaz eu achei tua maneira meio bozo tb. Acho que assim fica melhor
public String mulambo(int i) { String temp = ""; char a = 97; List<String> v = new ArrayList<String>(); for(int i=97;i<=122;i++){ temp = ""+ (char)i; v.add(temp); v.add((a+temp)); } return v.get(i); }

Do jeito que eu fiz ai ele não tá garantindo a ordem mas para garantir aquele mesma ordem é do fazer dois for. Ainda dá para refatorar esse código que eu fiz.

Acho que assim fica mais elegante.

F

Ola pessoal,
eu queria saber como voces implementaria um jogo de tabuleiro onde:
O jogo deve ler um arquivo que contém a descrição do tabuleiro e as jogadas dos jogadores.
O tabuleiro é uma sequencia de casas. Cada casa é de um tipo dos descritos na tabela anterior.
Cada linha do arquivo descreve uma casa. A descrição das casas deve seguir o padrão:
: Ou seja, se queremos que a casa 1 seja do tipo ?REPETE?, indicamos assim:
C1:REPETE
O identificador da casa é um String. Pode ser qualquer string. No exemplo estamos usando ?C?+um número.
O arquivo entrada.txt contem:

TABULEIRO:

C0:INICIO
C1:REPETE
C2:NADA
C3:VOLTA:3
C4:AVANCA:1
C5:PARA
C6:IR_PARA:C2
C7:NADA
C8:VOLTA:2
C9:PARA
C10:FIM
FIM_TABULEIRO

Jogadas

DADO:6
JOGADORES:2
J1>1
J2>3
J1>1
J2>3
J1>2
J1>4
J2>6
J1>3
J2>5
J1>7
J1>-1
J1>!@#$@#
oei2y323487293
J5>3
J1>3
J2>2
J1>5
J2>3
J1>2
J2>5
Um tabuleiro inválido é qualquer descrição de tabuleiro que tenha pelo menos uma definição inválida de uma casa ou que não termine com o comando ?FIM_TABULEIRO?:
Todos os tipos de casas declarados devem existir, senão: erro.
As referências a outras casas devem ser válidas. Ex.: No caso dos tipos de casas como ?IR_PARA:x? x deve ser uma casa declarada no tabuleiro.
Entradas inválidas, como ?#&YE*#&? devem gerar erro.
Mais de uma casa do tipo INICIO ou FIM deve gerar erro.

benflodin

minha vez

public String mulambo(int i)
{
	Vector v = new Vector();
	String prefix = "";		
	
	for(char c='a'; c<='z';c++)
		v.add(prefix+c);
			
	prefix = "a";
	
	for(char c='a'; c<='z';c++)
		v.add(prefix+c);
	
	return (String)v.get(i);
}
Criado 29 de novembro de 2006
Ultima resposta 30 de nov. de 2006
Respostas 5
Participantes 5