dúvida arraylist e substring

9 respostas
diogo.delgaudio

num exemplo q tenho tem a seguinte linha de código:

ArrayList produtos = (ArrayList) session.getAttribute("produtos");
                    
                    Produto p = (Produto) produtos.get(Integer.parseInt(evento.substring(7)));

porém não entendo o q o substring está fazendo aí. :S

9 Respostas

_fs

Evento é uma String declarada em algum outro lugar. Ela provavelmente contém algo do tipo:

String evento = "evento 1";

E com o substring o código consegue separar só o número, utilizando-o então para pegar o produto no índice esperado no arraylist “produtos”.

diogo.delgaudio

não… não tem nenhum nº as opções de string são somente excluir ou alterar, por isso estou tão encucado! :S

fabim

leia o javadoc da classe String

diogo.delgaudio

li e nada.

diogo.delgaudio

alguém sabe? :’(

ramilani12

O método substring quebra a string em partes ou seja vc define quais partes vc deseja quebrar
A forma que esta declarado evento.substring(7) quebrará a String a partir do index 7

Basta ler o Java doc

substring

public String substring(int beginIndex)

    Returns a new string that is a substring of this string. The substring begins with the character 
    at the specified index and extends to the end of this string.

    Examples:

         "unhappy".substring(2) returns "happy"
         "Harbison".substring(3) returns "bison"
         "emptiness".substring(9) returns "" (an empty string)
         

    Parameters:
        beginIndex - the beginning index, inclusive. 
    Returns:
        the specified substring. 
    Throws:
        IndexOutOfBoundsException - if beginIndex is negative or larger than the length of this String object.
fabim

“Returns a new string that is a substring of this string. The substring begins with the character
at the specified index and extends to the end of this string.”

Traduzindo pra vc (e adaptando):

“Retorna uma NOVA string que é um “pedaço” da String original. Essa nova String comeca com o
caracter que se encontra na posição especificada da String original (index) e vai até o final dela.”

Nao sei qto tempo vc tem de programador mas ja adiantando: Inglês é FUNDAMENTAL

Giulliano

pelo que eu entendi…vc vai obter várias exceptions…

primeiro pq cvc esta tentando dar um Integer.parse num valor que segubndo vc não é um número.

e segundo pq vc esta tentando dar um cast do resultado que vc não vai conseguir para um objeto do tipo Produto…

concorda???

diogo.delgaudio

Giulliano:
pelo que eu entendi…vc vai obter várias exceptions…

primeiro pq cvc esta tentando dar um Integer.parse num valor que segubndo vc não é um número.

e segundo pq vc esta tentando dar um cast do resultado que vc não vai conseguir para um objeto do tipo Produto…

concorda???

eu quero saber a mesma coisa, é essa a minha dúvida! eu peguei este código na internet e não estou entendendo pq ele está fazendo substring(7) numa string q tem exatamente 7 char, ou seja, pelo o q eu li - e foi dito aqui - não sobrará nenhum caracter. estou correto? a minha dúvida não é sobre o método substring, mas o pq ele q ele está posto (e fazendo o type cast) onde está. :wink:

Criado 31 de agosto de 2007
Ultima resposta 31 de ago. de 2007
Respostas 9
Participantes 5