Em seguida, o artigo anterior apresentará a você os métodos comuns de aplicativos Java e entrada e saída para sua referência. O conteúdo específico é o seguinte
1. Aplicação
1. Use StringBuilder ou StringBuffer
// junção (["a", "b", "c"]) -> "a e b e c" string junção (list <strs> strs) {stringbuilder sb = new stringbuilder (); booleano primeiro = true; for (string s: strs) {if (primeiro) primeiro = false; else sb.append ("e"); sb.append (s); } Return sb.toString ();}2. Gere números inteiros aleatórios em um intervalo
Rand aleatório = novo aleatório (); // entre 1 e 6, incluindo o diceroll () {return rand.nextint (6) + 1;} 3. Use iterator.Remove ()
filtro void (list <string> list) {for (iterator <string> iter = list.iterator (); iter.hasnext ();) {string item = iter.next (); if (...) iter.remove (); }}O método remover () atua no método de entrada retornada recentemente do próximo (). Cada entrada pode usar apenas o método Remow () uma vez.
4. Retornar a string
String reverse (string s) {return stringbuilder (s) .versevers (). Tostring ();} Esse método provavelmente deve ser adicionado à biblioteca padrão Java.
5. Inicie um thread <r /> Os três exemplos a seguir usam métodos diferentes para realizar a mesma coisa.
Como implementar o Runnnable:
void startathread0 () {new Thread (new MyRunnable ()). start ();} classe MyRunnable implementos runnable {public void run () {...}}Como herdar thread:
void startathread1 () {new mythread (). start ();} classe mythread estende thread {public void run () {...}}Como herdar thread anonimamente:
void startathread2 () {new thread () {public void run () {...}} .start ();}Não chame o método run () diretamente. O método Thread.start () é sempre chamado, o que cria um novo thread e faz com que o thread recém -criado seja chamado de execução ().
6. Use TryFinally
Exemplo de E/S.
void writeStuff () lança ioexception {outputStream out = new FileOutputStream (...); tente {out.write (...); } finalmente {out.close (); }}Exemplo de bloqueio:
vazio dowithlock (trava) {Lock.acquire (); tente {...} finalmente {Lock.Release (); }}2. Entrada/saída
1. Leia dados de bytes do fluxo de entrada
InputStream em = (...); tente {while (true) {int b = in.read (); if (b == -1) quebra; (... Processo B ...)}} Finalmente {in.close ();}O método read () retorna o próximo número de bytes lido no fluxo (0 a 255, incluindo 0 e 255) ou retorna -1 quando o final do fluxo é atingido.
2. Leia os dados do bloco do fluxo de entrada
InputStream em = (...); tente {byte [] buf = new Byte [100]; while (true) {int n = in.read (buf); if (n == -1) quebra; (... Processar buf com deslocamento = 0 e comprimento = n ...)}} finalmente {in.close ();}Lembre -se de que o método read () não preenche necessariamente todo o BUF, então você deve considerar a duração do retorno na lógica de processamento.
3. Leia o texto do arquivo
BufferredReader in = new BufferredReader (new InputStreamReader (new FileInputStream (...), "utf-8")); tente {while (true) {string line = in.readline (); if (line == null) quebra; (... linha de processo ...)}} finalmente {in.close ();}4. Escreva texto no arquivo
PrintWriter Out = new PrintWriter (new OutputStreamWriter (new FileOutputStream (...), "UTF-8")); tente {out.print ("hello"); out.print (42); out.println ("mundo!");} finalmente {out.close ();}O exposto acima é tudo sobre este artigo, espero que seja útil para o aprendizado de todos.