como adicionar elementos dinamicamente ao array string?
<p>no momento, tenho uma matriz de cadeias de caracteres <code>test</code>.</p><p>eu quero adicionar elementos a essa matriz dentro de um loop for. mas não estou conseguindo um jeito. eu sou novo no java e no android.</p>
<p><code>arrays</code> em java tem um tamanho definido, não é possível alterá-lo posteriormente adicionando ou removendo elementos (você pode ler alguns princípios básicos <a href="http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html">aqui</a> ).</p><p>em vez disso, use um <a href="http://docs.oracle.com/javase/6/docs/api/java/util/list.html"><code>list</code></a> :</p><pre><code>arraylist&lt;string&gt; mylist = new arraylist&lt;string&gt;(); mylist.add(mystring); //this adds an element to the list. </code></pre><p>obviamente, se você souber antecipadamente quantas seqüências de caracteres você colocará em sua matriz, poderá criar uma matriz desse tamanho e definir os elementos usando a posição correta:</p><pre><code>string[] myarray = new string[numberofstrings]; myarray[23] = string24; //this sets the 24'th (first index is 0) element to string24. </code></pre>
<p>array seria um objeto que implementa a interface arrays.</p>
<p>lembrando que os primitivos são:</p>
<p>boolean
null
undefined
number
string
symbol (novo no ecmascript 6)</p>
<p>objetos no javascript tem características de arrays asociativos.</p>
<p>aqui explica melhor sobre os arrays:</p>
<pre class="prettyprint"><code>https://www.devmedia.com.br/javascript-arrays/4079</code></pre> daria para fazer assim: 
import java.util.arraylist;
import java.util.list;

public class main {
 public static void main(string... args) {
 list<string> nomes = new arraylist<>();

 nomes.add("maria");
 nomes.add("joão");
 nomes.add("mariana");

 nomes.removeif(nome -> nome.startswi… <p>fala ai augusto, tudo bem? isso funciona pois a linguagem javascript é dinâmica, então o parâmetro será passado para a função mas não será atribuído para nenhuma variável.</p>
<p>espero ter ajudado.</p> <pre><code>for (iterator&lt;string&gt; i = someiterable.iterator(); i.hasnext();) { string item = i.next(); system.out.println(item); } </code></pre><p>note que se você precisar usar <code>i.remove();</code> no seu loop, ou acessar o iterador real de alguma forma, você não pode usar o idioma <code>for ( : )</code>, já que o iterador é meramente inferido.</p><p>como foi observado por denis bueno, este código funciona para qualquer objeto que implemente a interface <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/iterable.html"><code>iterable</code></a> .</p><p>além disso, se o lado direito do idioma <code>for (:)</code> for um objeto <code>array</code> em vez de <code>iterable</code>, o código interno usará um contador de índice int e verificará <code>array.length</code>. veja o <a href="http://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.14.2">java language specification</a> .</p> olá rafael,quando for construir elementos html na página, uma dica é você inserir diretamente no corpo, para evitar o uso excessivo do echo e também porque não é uma boa prática de programação o jei... <p>você pode tentar colocar uma nova linha nos dados:</p><pre><code>&lt;data&gt;foo bar baz baz bar&lt;/data&gt; </code></pre><p>se isso não funcionar, talvez seja necessário analisar a string manualmente.</p><p>se você precisar de xaml direto, é fácil:</p><pre class="lang-xml prettyprint-override"><code>&lt;textblock&gt; lorem &lt;linebreak/&gt; ipsum &lt;/textblock&gt; </code></pre> arraylist::new é uma referência ao construtor da classe arraylist, essa sintaxe é chamada de method reference. 
existem quatro tipos de method reference: 


referência à um método estático de uma classe: 
nomedaclasse::nomedometodoestatico 


referência à um método de instância de uma classe: 
nomed… <p>encontrei uma solução para o seu problema.</p><p>baseado em <a href="https://stackoverflow.com/a/8798355/637284">this so answer</a> eu fiz um programa que usa classes de caracteres regex para procurar por letras que possam ter modificadores opcionais. ele divide sua string em caracteres simples (combinados, se necessário) e os coloca em uma lista:</p><pre><code>import java.util.*; import java.lang.*; import java.util.regex.*; class main { public static void main (string[] args) { string s="குமார்"; list&lt;string&gt; characters=new arraylist&lt;string&gt;(); pattern pat = pattern.compile("\\p{l}\\p{m}*"); matcher matcher = pat.matcher(s); while (matcher.find()) { characters.add(matcher.group()); } // test if we have the right characters and length system.out.println(characters); system.out.println("string length: " + characters.size()); } } </code></pre><p>onde <code>\\p{l}</code> significa uma letra unicode e <code>\\p{m}</code> significa uma marca unicode.</p><p>a saída do trecho é:</p><pre><code>கு மா ர் string length: 3 </code></pre><p>veja <a href="https://ideone.com/apkapn">https://ideone.com/apkapn</a> para uma demonstração funcional</p><hr><p><strong>edit</strong></p><p>eu agora chequei meu regex com todas as cartas tamil válidas tiradas das tabelas em <a href="http://en.wikipedia.org/wiki/tamil\_script">http://en.wikipedia.org/wiki/tamil\_script</a> . descobri que com o regex atual não capturamos todas as letras corretamente (cada letra na última linha da tabela composta de grantha é dividida em duas letras), então refinei meu regex para a seguinte solução:</p><pre><code>pattern pat = pattern.compile("\u0b95\u0bcd\u0bb7\\p{m}?|\\p{l}\\p{m}?"); </code></pre><p>com este padrão em vez do acima, você deve ser capaz de dividir sua sentença em cada letra tamil válida (desde que a tabela da wikipédia esteja completa).</p><p>o código que usei para verificar é o seguinte:</p><pre><code>string s = "ஃஅஆஇஈஉஊஎஏஐஒஓஔக்ககாகிகீகுகூகெகேகைகொகோகௌங்ஙஙாஙிஙீஙுஙூஙெஙேஙைஙொஙோஙௌச்சசாசிசீசுசூசெசேசைசொசோசௌஞ்ஞஞாஞிஞீஞுஞூஞெஞேஞைஞொஞோஞௌட்டடாடிடீடுடூடெடேடைடொடோடௌண்ணணாணிணீணுணூணெணேணைணொணோணௌத்ததாதிதீதுதூதெதேதைதொதோதௌந்நநாநிநீநுநூநெநேநைநொநோநௌப்பபாபிபீபுபூபெபேபைபொபோபௌம்மமாமிமீமுமூமெமேமைமொமோமௌய்யயாயியீயுயூயெயேயையொயோயௌர்ரராரிரீருரூரெரேரைரொரோரௌல்லலாலிலீலுலூலெலேலைலொலோலௌவ்வவாவிவீவுவூவெவேவைவொவோவௌழ்ழழாழிழீழுழூழெழேழைழொழோழௌள்ளளாளிளீளுளூளெளேளைளொளோளௌற்றறாறிறீறுறூறெறேறைறொறோறௌன்னனானினீனுனூனெனேனைனொனோனௌஶ்ஶஶாஶிஶீஶுஶூஶெஶேஶைஶொஶோஶௌஜ்ஜஜாஜிஜீஜுஜூஜெஜேஜைஜொஜோஜௌஷ்ஷஷாஷிஷீஷுஷூஷெஷேஷைஷொஷோஷௌஸ்ஸஸாஸிஸீஸுஸூஸெஸேஸைஸொஸோஸௌஹ்ஹஹாஹிஹீஹுஹூஹெஹேஹைஹொஹோஹௌக்ஷ்க்ஷக்ஷாக்ஷிக்ஷீக்ஷுக்ஷூக்ஷெக்ஷேக்ஷைஷொக்ஷோஷௌ"; list&lt;string&gt; characters = new arraylist&lt;string&gt;(); pattern pat = pattern.compile("\u0b95\u0bcd\u0bb7\\p{m}?|\\p{l}\\p{m}?"); matcher matcher = pat.matcher(s); while (matcher.find()) { characters.add(matcher.group()); } system.out.println(characters); system.out.println(characters.size() == 325); </code></pre> <p>oi tacio, é possível fazer sem lib, no entanto, vai demandar um conhecimento mais profundo da linguagem javascript e esse não é o foco do treinamento de lógica, que tem maior foco na lógica. inclusive, nem era necessário ter as outras tag&#39;s que você colocou (acredito que você já tenha algum experiência com html, por isso quis adiciona-las).</p>
<p>no entanto, para lançar uma luz no problema apresentado por você, vou tentar resolvê-lo usando a menor quantidade de código possível para que você tenha um norte a media que for evoluindo na linguagem javascript. beleza?</p>
<p>vou explicar as particularidades em comentário no código. fui verboso nos nomes das variáveis para deixar claro o que cada parte esta fazendo:</p>
<pre class="prettyprint"><code>function id( el ){

 return document.getelementbyid( el );
}
function getmoney( el ){
 var money &#61; id( el ).value.replace( &#39;,&#39;, &#39;.&#39; );
 return parsefloat( money )*100;
}
function soma() {
 var total &#61; getmoney(&#39;campo1&#39;)&#43;getmoney(&#39;campo2&#39;)&#43;getmoney(&#39;campo3&#39;);
 // usando a nova função!
 id(&#39;campo4&#39;).value &#61; numeroparareal(total/100);
}

// nova função! a que faz a conversão!
function numeroparareal(numero) {

 console.log(numero);
 // todo número possui a função to fixed que o converte para string com o número de casas decimais que indicarmos.
 var totalcomdoisdigitoscomostring &#61; numero.tofixed(2);

 // veja o resultado!
 console.log(totalcomdoisdigitoscomostring);

 // como nosso numero é uma string, toda string possui o método replace que permite trocar parte dele. no caso, estamos trocando ponto por vírgula. o método devolve uma nova string com a modificação.
 var numerocomostringcompontotrocadoporvirgula &#61; totalcomdoisdigitoscomostring.replace(&#39;.&#39;, &#39;,&#39;);

 // veja o resultado
 console.log(numerocomostringcompontotrocadoporvirgula);

 // agora retorno a concatenação de r$ com a string que represnta nosso número
 return &#34;r$ &#34; &#43; numerocomostringcompontotrocadoporvirgula;
}</code></pre>
<p>ou eu posso fazer assim:</p>
<pre class="prettyprint"><code>function numeroparareal(numero) {

 return &#34;r$ &#34; &#43; numero.tofixed(2).replace(&#39;.&#39;, &#39;,&#39;);
}</code></pre>
<p>mas é como eu disse, a media que for evoluindo na linguagem, se ela é a linguagem de sua escolha, novos truques você aprenderá. </p>
<p>sucesso e bom estudo!</p> <p>usando <a href="http://ruby-doc.org/core-1.9.3/string.html#method-i-scan"><code>scan</code></a> deve fazer o truque:</p><pre><code>string.scan(/regex/) </code></pre>