Você está aqui: Java ::: Dicas & Truques ::: Recursão (Recursividade) |
||||||
Como calcular fatorial em Java usando uma função recursivaQuantidade de visualizações: 1080 vezes |
||||||
Sempre que estamos no assunto de recursão (ou recursividade), um dos primeiros exemplos que vêm à nossa mente é o cálculo de fatorial, pois seu entendimento é fácil e, dessa forma, podemos nos concentrar nos aspectos da função recursiva. Na matemática, o fatorial de um número natural n, representado por n!, é o produto de todos os inteiros positivos menores ou iguais a n. O fatorial de um número n pode ser definido recursivamente da seguinte forma:
Entendida esta definição, veja agora o código Java completo para o exemplo:
Ao executar este código nós teremos o seguinte resultado:
Note que aqui nós calculamos e exibimos o fatorial dos números de 0 até 10. |
||||||
![]() |
||||||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arquivos e Diretórios |
||||
Exercícios Resolvidos de Java - Listando arquivos e diretórios em um diretório informado pelo usuárioQuantidade de visualizações: 2588 vezes |
||||
Pergunta/Tarefa: Escreva um programa Java que usa o método:
Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
| ||||
Java ::: Fundamentos da Linguagem ::: Laços de Repetição |
||||||
Como usar o laço while da linguagem Java - Java para iniciantesQuantidade de visualizações: 17375 vezes |
||||||
O laço while é usado quando queremos executar um bloco de códigos continuamente até uma condição seja verdadeira. Veja sua estrutura:
Diferente de C e C++, a condição a ser testada no while do Java deve sempre retornar um valor boolean. E, muito cuidado deve ser tomado para não produzirmos laços infinitos, ou seja, a condição sendo testada nunca retornará um valor false. Veja um trecho de código no qual exibimos os números pares de 0 a 20:
Veja outro exemplo no qual o laço while é executado até que o usuário digite "fim":
Para finalizar, lembre-se de que o laço while é executado somente enquanto a condição testada for verdadeira. Isso quer dizer que, se na primeira tentativa de execução, a condição já for falsa, o laço nunca será executado. | ||||||
Java ::: Dicas & Truques ::: Strings e Caracteres |
||
Como transformar um StringBuffer em uma String usando o método toString() da classe StringBufferQuantidade de visualizações: 105 vezes |
||
Como já vimos em dicas anteriores, um objeto da classe String é imutável, ou seja, quando modificamos o conteúdo de uma String, o interpretador cria um novo objeto, copiando o conteúdo da string anterior para o objeto recém-criado. Já a classe StringBuffer é mutável, ou seja, podemos modificar o seu conteúdo sem a necessidade da criação de um novo objeto. Você ficará surpreso ao saber que não podemos atribuir uma variável do tipo StringBuffer em uma variável do tipo String e vice-versa. Ao tentarmos fazer isso, os seguintes erros de compilação são exibidos: a) error: incompatible types: StringBuffer cannot be converted to String b) error: incompatible types: String cannot be converted to StringBuffer Assim, sempre que for necessário converter um StringBuffer em uma String, temos que usar o seu método toString(). Veja:
| ||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
||||||
Exercício Resolvido de Java - Como contar de 0 até 10 usando recursividade em Java - Funções recursivas em JavaQuantidade de visualizações: 5022 vezes |
||||||
Pergunta/Tarefa: Escreva um método Java recursivo que conta e exibe os valores de 0 até 10. Seu método deverá possuir a seguinte assinatura:
Sua saída deverá ser parecida com:
Veja a resolução comentada deste exercício usando Java:
| ||||||
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
||
Como criar diretórios em Java usando o método mkdir() da classe FileQuantidade de visualizações: 2 vezes |
||
Em algumas ocasiões nossos programas precisam criar diretórios. Na linguagem Java isso pode ser feito com o auxílio do método mkdir() da classe File, do pacote java.io. Este método não recebe nenhum parâmetro e atua em cima de uma instância da classe File. Além disso, ele retorna um boolean indicando o sucesso ou não da operação. Veja o código completo para um exemplo:
Se o diretório puder ser criado, você verá uma mensagem: Diretório criado com sucesso Observe que este método pode disparar uma exceção do tipo SecurityException se você não tiver permissão para criar diretórios nos locais especificados. | ||
Java ::: Classes e Componentes ::: JMenuBar, JMenu, JMenuItem e Afins |
||
Java Swing - Como usar objetos da classe JCheckBoxMenuItem como itens de menu de suas aplicações Java SwingQuantidade de visualizações: 8810 vezes |
||
Neste exemplo mostrarei como usar objetos da classe JCheckBoxMenuItem como itens de um menu. Tais itens podem ser usados quando o usuário puder marcar uma ou mais opções, em um grupo relacionado de opções. Veja o resultado na imagem abaixo: ![]() E agora o código completo para o exemplo:
| ||
Java ::: Java para Engenharia ::: Unidades de Medida |
||
Como converter Metros Quadrados em Quilômetros Quadrados em Java - Java para Física e EngenhariaQuantidade de visualizações: 349 vezes |
||
Em muitas situações nós temos uma medida de área em m2 e queremos transformá-la em km2, ou seja, converter Metros Quadrados para Quilômetros Quadrados. Para isso só precisamos dividir os metros quadrados por 1.000.000. Veja a fórmula: Agora veja o código Java que pede para o usuário informar a medida de área em metros quadrados e a converte para quilômetros quadrados. Note que mostrei como exibir o resultado em notação científica e sem notação científica:
Ao executar este código Java nós teremos o seguinte resultado: Informe os metros quadrados: 80 Você informou 80.0 metros quadrados. Isso equivale a 8.0E-5 quilômetros quadrados. Sem notação científica: 0,000080 | ||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
||||
Exercícios Resolvidos de Java - Um laço for que solicita ao usuário 10 números inteiros e mostra o menor e o maior valor informadoQuantidade de visualizações: 1155 vezes |
||||
Pergunta/Tarefa: Escreva um programa Java console que usa o laço for para solicitar ao usuário que informe 10 números inteiros. Em seguida mostre o maior e o menor valor lido. Não é permitido usar matrizes: Dica: Use um objeto da classe Scanner para obter a entrada do usuário. Resposta/Solução: Como a solução deste exercício depende de valores informados pelo usuário, a classe Scanner deverá ser usada. Desta forma, você deverá importá-la, usando a linha:
| ||||
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |