Você está aqui: Java ::: Fundamentos da Linguagem ::: Tipos de Dados

Java para iniciantes - Como usar o tipo de dados boolean em seus códigos Java

Quantidade de visualizações: 22492 vezes
O tipo de dados boolean representa dois valores lógicos representados pelos literais true ou false. Valores boolean são produzidos pelos operadores relacionais (<, <=, > e >=), condicionais (&& e ||), lógicos (& e |) e de igualdade (== e !=) e são usados para gerenciar o fluxo de controle durante a execução do programa.

Veja um trecho de código exemplificando o uso deste tipo de dados:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

public class Estudos{
  public static void main(String args[]){
    boolean continuar = true;
    
    if(continuar == true){
      System.out.println("Podemos continuar.");
    }
    else{
      System.out.println("Vamos parar.");
    }    
    
    System.exit(0);
  }
}

Quando quisermos testar se o valor de uma variável ou constante do tipo boolean é true, podemos omitir o operador e o literal. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

if(continuar){
  System.out.println("Podemos continuar.");
}

O mesmo vale para a negação:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

if(!continuar){
  System.out.println("Podemos parar.");
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos

Exercício Resolvido de Java - A classe Produto (construtores, métodos, getters e setters e encapsulamento)

Quantidade de visualizações: 17110 vezes
Pergunta/Tarefa:

Crie uma classe Produto para representar um produto do mundo real. Sua classe deverá conter os seguintes atributos e métodos:

1) Um campo de dados privado do tipo String chamado nome, que representará o nome do produto.

2) Um campo de dados privado do tipo double chamado precoCusto, que guardará o preço de custo do produto.

3) Um campo de dados privado do tipo double chamado precoVenda, que guardará o preço de venda do produto.

4) Um campo de dados privado do tipo double chamado margemLucro, que guardará a margem de lucro do produto.

5) Métodos públicos get() e set() para os atributos acima. Modifique o método setPrecoVenda() para que o preço de venda não seja inferior ao preço de compra. Caso isso aconteça, exiba uma mensagem alertando o usuário.

6) Crie um método chamado calcularMargemLucro() que calculará a margem de lucro do produto.

7) Crie um método chamado getMargemLucroPorcentagem() que retornará a margem de lucro como percentual.

Para finalizar, no método main() da classe de teste, crie um novo objeto da classe Produto, peça para o usuário informar os preços de custo e de venda e exiba a margem de lucro em moeda e em percentual. Sua saída deverá ser algo parecido com o mostrado na imagem abaixo:

Informe o preço de custo: 120
Informe o preço de venda: 195
Preço de custo: 120.0
Preço de Venda: 195.0
Margem de Lucro: 75.0
Margem de Lucro Percentual (%): 62.5
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

Produto.java:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

public class Produto{
  private String nome; // nome do produto
  private double precoCusto; // preço de custo do produto
  private double precoVenda; // preço de venda do produto
  private double margemLucro; // margem de lucro do produto

  // obtém a margem de lucro
  public double getMargemLucro(){
    return margemLucro;
  }

  // define a margem de lucro
  public void setMargemLucro(double margemLucro){
    this.margemLucro = margemLucro;
  }

  // obtém o nome do produto
  public String getNome(){
    return nome;
  }

  // define o nome do produto
  public void setNome(String nome){
    this.nome = nome;
  }

  // obtém o preço de custo
  public double getPrecoCusto(){
    return precoCusto;
  }

  // define o preço de custo
  public void setPrecoCusto(double precoCusto){
    this.precoCusto = precoCusto;
  }

  // obtém o preço de venda
  public double getPrecoVenda(){
    return precoVenda;
  }

  // define o preço de venda
  public void setPrecoVenda(double precoVenda){
    // o preço de venda não pode ser menor que o preço de custo
    if(precoVenda < this.precoCusto){
      System.out.println("O preço de venda não pode ser inferior ao de custo");  
    }
    else{
      this.precoVenda = precoVenda;
    }
  }
  
  // calcula a margem de lucro
  public void calcularMargemLucro(){
    this.margemLucro = this.precoVenda - this.precoCusto;
  }
  
  // retorna a margem de lucro em porcentagem
  public double getMargemLucroPorcentagem(){
    return (this.margemLucro / this.precoCusto) * 100;
  }
}

Veja agora o método main() que nos permite testar a funcionalidade da classe Produto:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);
    
    // vamos criar um novo objeto da classe Produto
    Produto p = new Produto();
    
    // vamos ler o preço de custo
    System.out.print("Informe o preço de custo: ");
    p.setPrecoCusto(Double.parseDouble(entrada.nextLine()));
    
    // vamos ler o preço de venda
    System.out.print("Informe o preço de venda: ");
    p.setPrecoVenda(Double.parseDouble(entrada.nextLine()));
    
    // vamos calcular a margem de lucro
    p.calcularMargemLucro();
    
    // vamos exibir os resultados
    System.out.println("Preço de custo: " + p.getPrecoCusto());
    System.out.println("Preço de Venda: " + p.getPrecoVenda());
    System.out.println("Margem de Lucro: " + p.getMargemLucro());
    System.out.println("Margem de Lucro Percentual (%): " + 
      p.getMargemLucroPorcentagem());
  }
}



Java ::: Dicas & Truques ::: Strings e Caracteres

Como converter uma string para letras maiúsculas usando o método toUpperCase() da classe String da linguagem Java

Quantidade de visualizações: 1 vezes
Nesta dica eu mostro como podemos usar o método toUpperCase() da classe String para transformar em maiúsculas todas as letras de uma palavra, frase ou texto.

Veja o exemplo abaixo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

public class Estudos{
  public static void main(String[] args){
    String frase = "Programar em Java é bom";
    System.out.println(frase); 
    
    // vamos converter para letras maiúsculas
    frase = frase.toUpperCase();
     
    System.out.println(frase);
     
    System.exit(0);
  }
}  

Ao executarmos este código nós teremos o seguinte resultado:

Programar em Java é bom
PROGRAMAR EM JAVA É BOM


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Como resolver o problema da Subsequência de Soma Máxima em Java usando o Algorítmo de Kadane

Quantidade de visualizações: 458 vezes
Pergunta/Tarefa:

O problema do Subvetor Contíguo de Soma Máxima, ou Subarray ou Subsequência de Soma Máxima é um dos algorítmos mais populares na programação dinâmica. Este problema envolve encontrar um subvetor, ou seja, um sub-array contíguo de maior soma possível. Por contíguo entendemos que os elementos da subsequência deverão estar consecutivos no vetor original.

O Algorítmo de Kadane, inventado por Jay Kadane em 1977, é um dos favoritos para a resolução deste problema, e deverá ser aplicado na resolução deste exercício.

Dado o vetor [-2, 1, -3, 4, -1, 2, 1, -5, 4], encontre a soma máxima da subsequência contígua. Não é exigido mostrar os elementos da sub-sequência, apenas o valor da soma máxima.

Sua saída deverá ser parecida com:

A soma maxima é: 6
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

public class Estudos {
  public static void main(String[] args) {
    // vamos criar um array com 9 elementos
    int valores[] = {-2, 1, -3, 4, -1, 2, 1, -5, 4};
    
    // agora usamos o algoritmo de Kadane para encontrar
    // a maior soma consecutiva
    int soma_maxima = kadane(valores);
    System.out.println("A soma maxima é: " + soma_maxima);
  }
  
  // método que recebe um array e usa o algoritmo de Kadane
  // para retornar a maior soma consecutiva
  public static int kadane(int vetor[]){
    // ajustamos max_atual para 0 e max_total para -1 
    int max_atual = 0, max_total = -1;
    
    // um laço for que percorre todos os elementos do
    // vetor, do primeiro até o último
    for(int i = 0; i < vetor.length; i++){
      // max_atual recebe ele mesmo mais o valor
      // do elemento no índice i
      max_atual = max_atual + vetor[i];
      
      // se max_atual for negativo nós o ajustamos
      // para zero novamente
      if(max_atual < 0){
        max_atual = 0;
      }
      
      // se max_atual for maior que max_total então
      // max_total recebe o valor de max_atual
      if(max_atual > max_total){
        max_total = max_atual;
      }
    }
    
    // e retornamos a soma máxima
    return max_total;
  }
}



Vamos testar seus conhecimentos em Hidrologia

Com relação à delimitação de bacias hidrográficas, é correto afirmar que

A) todos os pontos em seu interior, obrigatoriamente possuem cotas iguais ou inferiores em relação às cotas do divisor de águas da bacia.

B) tanto o divisor de água do tipo topográfico quanto o divisor do tipo freático podem ser utilizados, pois os dois sempre se coincidem.

C) segundo o método de Strahler de hierarquização fluvial, bacias hidrográficas de 4ª ordem têm o dobro de área de drenagem do que bacias classificadas em 2ª ordem.

D) a linha imaginária que define o seu limite deve ser traçada perpendicularmente às curvas de nível e não cortar nenhum curso de água além do ponto onde se encontra o exutório.

E) na escolha do local do exutório para a delimitação, os cursos d?água devem ser classificados como de 4ª ordem (método de Strahler) no mínimo, para que a bacia hidrográfica tenha uma área representativa.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais

Instalações prediais de águas pluviais

Um professor de engenharia que gostava de fazer os alunos pensarem ativamente e questionarem a base das tabelas e ábacos fez uma pergunta em classe a partir dos ábacos da NBR 10844 de instalações prediais de águas pluviais: por que os ábacos com saída do tipo aresta viva fornecem maiores diâmetros que as do tipo funil? Cinco principais explicações foram fornecidas pelas classes, mas apenas uma estava correta. Marque a opção que explica corretamente o fenômeno.

A) As saídas do tipo aresta viva fornecem maior capacidade de escoamento por permitir maior lâmina de água imediatamente sobre a entrada.

B) As saídas do tipo funil geram aumento da perda de carga, ocasionando uma redução da capacidade hidráulica, que é, então, expressa no ábaco.

C) As saídas em aresta viva geram uma incorporação de ar indesejada ao escoamento, ocasionando um efeito de sucção que reduz a capacidade hidráulica.

D) As saídas do tipo funil necessitam de maior altura até chegar ao diâmetro da tubulação e isso é compensado em relação ao parâmetro L do ábaco.

E) As saídas em arestas vivas têm menor perda de carga, o que implica a incorporação de ar com consequente redução da capacidade hidráulica.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

Noções de licitação pública

Tipo de licitação é a forma como se dará o julgamento das propostas e a escolha do vencedor.

Em relação aos tipos e às modalidades da licitação pública, leia com atenção a afirmativa a seguir:

O _________ será sempre pelo tipo ____________; o __________ será sempre pelo tipo _____________; o _____________ não será por nenhum tipo; já as demais modalidades podem ser por qualquer tipo, sendo a regra o menor preço.

Marque a alternativa que preenche as lacunas de forma correta.

A) leilão - menor preço - pregão - maior lance ou oferta - concorrência.

B) pregão - menor preço - leilão - maior lance ou oferta - concurso.

C) concurso - melhor técnica - leilão - técnica e preço - convite.

D) pregão - técnica e preço - leilão - maior lance ou oferta - concurso.

E) concurso - menor preço - leilão maior lance ou oferta - convite.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

Fórmula de Hazen-Williams

A fórmula de Hazen-Williams (1903) é resultado de um estudo estatístico com grande número de dados experimentais, recomendada para escoamento turbulento de transição, água a 20ºC e diâmetro maior ou igual a 50mm.

Calcule o diâmetro de uma tubulação de aço (C=90), com 1.000m de comprimento e perda de carga de 51m, cuja vazão é de 200l/s.

A) Aproximadamente 0,3m de diâmetro.

B) Aproximadamente 0,4m de diâmetro.

C) Aproximadamente 0,1m de diâmetro.

D) Aproximadamente 0,5m de diâmetro.

E) Aproximadamente 0,2m de diâmetro.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fundações

Sondagem à Percussão (SPT) e Rotativa (RQD)

O ensaio SPT pode ser recomendado de forma exclusiva nos seguintes casos:

A) Um solo com presença de matacões, como são os solos coluvionares.

B) Em solo residual de lamitos com ambiente bem drenado.

C) Em solos transportados de leques aluviais.

D) Em solos de cascalho de beira de rio.

E) Em solos com presença de areias muito compactas.
Verificar Resposta Estudar Cards Todas as Questões

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

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
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

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 56 usuários muito felizes estudando em nosso site.