<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Últimas mensagens do tópico "[RESOLVIDO] Pegar String de Arraylist"]]></title>
		<link>http://www.guj.com.br/posts/list/4.java</link>
		<description><![CDATA[Últimas mensagens enviadas no tópico "[RESOLVIDO] Pegar String de Arraylist"]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>[RESOLVIDO] Pegar String de Arraylist</title>
				<description><![CDATA[ Pessoal... tenho uma classe que deve fazer o seguinte:<br /> <br /> <br /> Tem um arraylist que recebe uma frase, mostra se alguma palavra da frase tem o "radical" _N junto dela, se tiver mostra a posição que ela está, mas depois de mostrar a posição dela não consigo mostrar o seu conteúdo. <br />  <br /> <br /> <br /> <br /> package calculos;<br /> <br /> import java.util.ArrayList;<br /> <br /> <br /> public class Corpus {<br /> <br /> 	Corpus() {<br /> 		<br /> 			 <br /> 			[color=green] //Armazenar todos os _N em uma lista[/color]<br /> 			 <br /> 		        ArrayList&lt;Object&gt; al = new ArrayList&lt;Object&gt;();<br /> 		        al.add("teste_N um_O array_P list_N para_I extrair_O valores_U");<br /> 		     		        <br /> 		        Iterator it = al.iterator();<br /> 		        <br /> 		        int index;<br /> 		        String str;<br /> 		        <br /> 		        for (int i = 0; i &lt; al.size(); i++) {<br /> 		            str = (String)it.next();<br /> 		            index = str.indexOf("_N");<br /> 		            <br /> 		         if (al.contains(str)){<br /> 		        	 System.out.print("Sim, existe pelo menos um _N \n\n");<br /> 		         }<br /> 		         <br /> 		         System.out.print("Se existe um _N, em que posição ele está? \n\n");<br /> 		            <br /> 		            if (index &gt; -1) {<br /> 		                System.out.println("Está na posição: " + index);<br /> 		                i = al.size();<br /> 		                <br /> 		                 String tst = (String) al.get(index);  <br /> 		                System.out.println("Está na posição: " + index);<br /> 		                	                <br /> 		               <br /> 		                <br /> 		            }<br /> 		            <br /> 		            <br /> 		        }<br /> 		<br /> 		}<br /> <br /> <br /> 	}<br /> <br /> <br /> <br /> [color=red]Saída:[/color]<br /> Sim, existe pelo menos um _N <br /> <br /> Se existe um _N, em que posição ele está? <br /> <br /> Está na posição: 5<br /> Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 5, Size: 1<br /> 	at java.util.ArrayList.RangeCheck(Unknown Source)<br /> 	at java.util.ArrayList.get(Unknown Source)<br /> 	at calculos.Corpus.&lt;init&gt;(Corpus.java:39)<br /> 	at calculos.CPrincipal.main(CPrincipal.java:<img src="http://www.guj.com.br/images/smilies/b2eb59423fbf5fa39342041237025880.gif" border="0"><br /> <br /> <br /> Obrigado,<br /> Abraços<br /> <br /> ]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/197731/992398/resolvido-pegar-string-de-arraylist
</guid>
				<link>http://www.guj.com.br/prepost/197731/992398/resolvido-pegar-string-de-arraylist
</link>
				<pubDate><![CDATA[Tue, 9 Feb 2010 08:50:03]]> GMT</pubDate>
				<author><![CDATA[ hugoramone]]></author>
			</item>
			<item>
				<title>Pegar String de Arraylist</title>
				<description><![CDATA[ [quote=hugoramone]Pessoal... tenho uma classe que deve fazer o seguinte:<br /> <br /> <br /> Tem um arraylist que recebe uma frase, mostra se alguma palavra da frase tem o "radical" _N junto dela, se tiver mostra a posição que ela está, mas depois de mostrar a posição dela não consigo mostrar o seu conteúdo. <br />  <br /> <br /> <br /> <br /> package calculos;<br /> <br /> import java.util.ArrayList;<br /> <br /> <br /> public class Corpus {<br /> <br /> 	Corpus() {<br /> 		<br /> 			 <br /> 			[color=green] //Armazenar todos os _N em uma lista[/color]<br /> 			 <br /> 		        ArrayList&lt;Object&gt; al = new ArrayList&lt;Object&gt;();<br /> 		        al.add("teste_N um_O array_P list_N para_I extrair_O valores_U");<br /> 		     		        <br /> 		        Iterator it = al.iterator();<br /> 		        <br /> 		        int index;<br /> 		        String str;<br /> 		        <br /> 		        for (int i = 0; i &lt; al.size(); i++) {<br /> 		            str = (String)it.next();<br /> 		            index = str.indexOf("_N");<br /> 		            <br /> 		         if (al.contains(str)){<br /> 		        	 System.out.print("Sim, existe pelo menos um _N \n\n");<br /> 		         }<br /> 		         <br /> 		         System.out.print("Se existe um _N, em que posição ele está? \n\n");<br /> 		            <br /> 		            if (index &gt; -1) {<br /> 		                System.out.println("Está na posição: " + index);<br /> 		                i = al.size();<br /> 		                <br /> 		                 String tst = (String) al.get(index);  <br /> 		                System.out.println("Está na posição: " + index);<br /> 		                	                <br /> 		               <br /> 		                <br /> 		            }<br /> 		            <br /> 		            <br /> 		        }<br /> 		<br /> 		}<br /> <br /> <br /> 	}<br /> <br /> <br /> <br /> [color=red]Saída:[/color]<br /> Sim, existe pelo menos um _N <br /> <br /> Se existe um _N, em que posição ele está? <br /> <br /> Está na posição: 5<br /> Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 5, Size: 1<br /> 	at java.util.ArrayList.RangeCheck(Unknown Source)<br /> 	at java.util.ArrayList.get(Unknown Source)<br /> 	at calculos.Corpus.&lt;init&gt;(Corpus.java:39)<br /> 	at calculos.CPrincipal.main(CPrincipal.java:8)<br /> <br /> <br /> Obrigado,<br /> Abraços<br /> <br /> [/quote]<br /> <br /> Voce errou nessa parte:<br /> <br /> [code]<br /> ...<br /> str = (String)it.next();<br /> index = str.indexOf("_N");<br /> ...<br /> String tst = (String) al.get(index);  <br /> System.out.println("Está na posição: " + index);<br /> ...<br /> [/code]<br /> <br /> Observe que quando chamou o método indexOf(String), o chamou em um objeto String, isso retorna a posição inicial<br /> da primeira ocorrência de uma substring especificada. No caso, essa substring a ser buscada é "_N".<br /> E quando chamou o método get(int index), o fez em uma referência ArrayList, houve uma pequena confusão porque você tentou<br /> acessar a posição que recebeu do indexOf, que se referia a String e suas posições e não ao ArrayList.<br /> Recebeu a ArrayIndexOutOfBounds por ter acessado um índice inválido, já que só há 1 elemento em seu array e você tentou acessar<br /> a posição 5.]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/197731/992427/pegar-string-de-arraylist
</guid>
				<link>http://www.guj.com.br/prepost/197731/992427/pegar-string-de-arraylist
</link>
				<pubDate><![CDATA[Tue, 9 Feb 2010 09:36:48]]> GMT</pubDate>
				<author><![CDATA[ felipemartinsss]]></author>
			</item>
			<item>
				<title>Re:Pegar String de Arraylist</title>
				<description><![CDATA[ Muito obrigado pela explicação!<br /> <br /> Além de corrigir consegui entender o porque do erro, muito obrigado!]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/197731/992518/repegar-string-de-arraylist
</guid>
				<link>http://www.guj.com.br/prepost/197731/992518/repegar-string-de-arraylist
</link>
				<pubDate><![CDATA[Tue, 9 Feb 2010 10:51:07]]> GMT</pubDate>
				<author><![CDATA[ hugoramone]]></author>
			</item>
			<item>
				<title>Re:Pegar String de Arraylist</title>
				<description><![CDATA[ Só complementando: usar generics com &lt;Object&gt; é o mesmo que não usar. Se o seu List é de String, declare um List&lt;String&gt;. Isso evita possíveis erros de digitação/programação, evita casts, possíveis erros de runtime e deixa o código mais limpo.<br /> <br /> E sempre que quiser colocar seu código aqui, use as tags "code". Assim:<br /> <br /> [code]<br /> seu código aqui<br /> [/code]]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/197731/992641/repegar-string-de-arraylist
</guid>
				<link>http://www.guj.com.br/prepost/197731/992641/repegar-string-de-arraylist
</link>
				<pubDate><![CDATA[Tue, 9 Feb 2010 13:22:50]]> GMT</pubDate>
				<author><![CDATA[ marcobiscaro2112]]></author>
			</item>
			<item>
				<title>Pegar String de Arraylist</title>
				<description><![CDATA[ Ah... e não custa nada colocar um [RESOLVIDO] no título do tópico quando não houver mais a dúvida (vá no primeiro tópico, escolha "editar" e mude o título).]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/197731/992643/pegar-string-de-arraylist
</guid>
				<link>http://www.guj.com.br/prepost/197731/992643/pegar-string-de-arraylist
</link>
				<pubDate><![CDATA[Tue, 9 Feb 2010 13:23:59]]> GMT</pubDate>
				<author><![CDATA[ marcobiscaro2112]]></author>
			</item>
			<item>
				<title>Re:Pegar String de Arraylist</title>
				<description><![CDATA[ obrigado Marco, desculpe, sou novato no fórum.]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/197731/992896/repegar-string-de-arraylist
</guid>
				<link>http://www.guj.com.br/prepost/197731/992896/repegar-string-de-arraylist
</link>
				<pubDate><![CDATA[Tue, 9 Feb 2010 17:59:51]]> GMT</pubDate>
				<author><![CDATA[ hugoramone]]></author>
			</item>
	</channel>
</rss>
