![]() |
|
||||
![]() Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Você está aqui: Java ::: Tratamento de Erros ::: Erros de Tempo de Execução |
Como evitar ou corrigir uma exceção NullPointerExceptionQuantidade de visualizações: 30974 vezes |
A exceção NullPointerException é uma exceção (erro) que acontece durante a execução do programa e é causada por um dos fatores abaixo: 1) Tentativa de chamar um método de instância de um objeto null. 2) Tentativa de acessar ou modificar membros de um objeto null. 3) Tentativa de obter o valor da propriedade length de um objeto null como se este fosse um array. 4) Tentativa de acessar ou modificar elementos de um objeto null como se este fosse um array. 5) Atirar um objeto null como se este fosse um valor Throwable. Por objeto null entendemos uma referência a um objeto de uma classe, interface ou array que foi declarado mas não inicializado ou que sofreu a atribuição do valor especial null, o que torna o objeto disponível para coleta de lixo e consequentemente faz com que a referência aponte para um local nulo na memória. Antes de vermos os exemplos, observe a posição da classe pública NullPointerException na hierarquia de classes da plataforma Java: java.lang.Object java.lang.Throwable java.lang.Exception java.lang.RuntimeException java.lang.NullPointerException Veja um exemplo no qual tentamos obter o tamanho de uma string não inicializada: public class Estudos{ static String nome; public static void main(String args[]){ System.out.println(nome.length()); System.exit(0); } } Exception in thread "main" java.lang.NullPointerException at Estudos.main(Estudos.java:5) static String nome = ""; public class Estudos{ static String nome = "Osmar J. Silva"; public static void main(String args[]){ System.out.println(nome.length()); nome = null; System.out.println(nome.length()); System.exit(0); } } |
![]() |
Java ::: Pacote java.lang ::: StringBuffer |
||||
Java do básico ao avançado - Como usar o método append() para adicionar mais conteúdo ao final de um StringBufferQuantidade de visualizações: 9218 vezes |
||||
O método append() da classe StringBuffer se torna útil quando precisamos adicionar mais conteúdo ao final de um objeto desta classe. Este método possui, no Java 7, as seguintes sobrecargas: public StringBuffer append(Object obj) public StringBuffer append(String str) public StringBuffer append(StringBuffer sb) public StringBuffer append(CharSequence s) public StringBuffer append(CharSequence s, int start, int end) public StringBuffer append(char[] str) public StringBuffer append(char[] str, int offset, int len) public StringBuffer append(boolean b) public StringBuffer append(char c) public StringBuffer append(int i) public StringBuffer append(long lng) public StringBuffer append(float f) public StringBuffer append(double d) Note que em todas as sobrecargas do método, o retorno é um objeto da classe StringBuffer. Mas, não é um novo objeto StringBuffer. É uma referência ao objeto StringBuffer já existente. Veja um exemplo no qual usamos este método para adicionar mais duas palavras ao conteúdo do StringBuffer:
Ao executarmos este código nós teremos o seguinte resultado: Gosto muito de programar em Java | ||||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
||||
Exercícios Resolvidos de Java - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 12599 vezes |
||||
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Java que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Java:
| ||||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Hidrologia e Hidráulica |
||||
Exercícios Resolvidos de Java - Como aplicar a Fórmula da Vazão pelo Método Racional em Java - De acordo com o método racional, a vazão máxima a ser consideradaQuantidade de visualizações: 320 vezes |
||||
Pergunta/Tarefa: Neste exercício de Java nós veremos como aplicar a Fórmula da Vazão pelo Método Racional para resolver uma questão de Hidrologia que caiu no concurso para Analista na Área de Engenharia Sanitária do MPE-MS em 2013. 1) De acordo com o método racional, a vazão máxima a ser considerada no projeto de um bueiro para uma chuva de intensidade igual a 2 mm/h, com duração igual ou superior ao tempo de concentração da bacia de contribuição que possui área igual a 18 km2 e coeficiente de escoamento superficial igual a 0,7 será, em m3/s, igual a A) 5,4. B) 7,0. C) 11,5. D) 14,0. E) 25,2. Sua saída deve ser parecida com: Intensidade da chuva em mm/h: 2 Área da bacia em quilômetros quadrados: 18 Coeficiente de escoamento: 0.7 A vazão máxima é: 7.0 O primeiro passo para resolver esta questão é relembrando a fórmula da Vazão pelo Método Racional. Apresentado pela primeira vez em 1851 por Mulvaney e usado por Emil Kuichling em 1889, o Método Racional é um método indireto e estabelece uma relação entre a chuva e o escoamento superficial (deflúvio). Usamos esta fórmula para calcular a vazão de pico de uma determinada bacia, considerando uma seção de estudo. Eis a fórmula: \[Q = \frac{C \cdot I \cdot A}{360} \] Onde: Q = vazão de pico (m3/s); C = coeficiente de escoamento superficial que varia de 0 a 1. I = intensidade média da chuva (mm/h); A = área da bacia (ha), onde 1 ha = 10.000m2 Na questão do concurso nós já temos a intensidade da chuva em milímetros por hora, mas a área da bacia está em quilômetros quadrados, o que exigirá uma conversão para hectares. No código Java eu mostro essa parte comentada. Então, hora de vermos a resolução comentada deste exercício usando Java:
| ||||
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 |