Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Como testar quantas vezes um valor é encontrado em um vetor - Como usar vetores e matrizes em Java - Exercícios Resolvidos de JavaQuantidade de visualizações: 16002 vezes |
Pergunta/Tarefa: Escreva um programa Java que declara, constrói e inicializa um vetor de 10 inteiros. Em seguida peça para que o usuário informe um valor a ser pesquisado. Faça uma varredura no vetor e informe quantas vezes o valor pesquisado é encontrado: // declara, constrói e inicializa um vetor de 10 inteiros int valores[] = {4, 21, 9, 8, 12, 21, 4, 4, 1, 10}; Informe um valor: 4 O valor foi encontrado: 3 vezes Informe um valor: 8 O valor foi encontrado: 1 vezes Informe um valor: 3 O valor foi encontrado: 0 vezes 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; import java.util.Scanner; public class Estudos{ public static void main(String[] args){ // declara, constrói e inicializa um vetor de 10 inteiros int valores[] = {4, 21, 9, 8, 12, 21, 4, 4, 1, 10}; // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos ler um valor inteiro System.out.print("Informe um valor: "); int pesquisa = Integer.parseInt(entrada.nextLine()); // vamos verificar quantas vezes o valor informado está // contido no vetor int repeticoes = 0; for(int i = 0; i < valores.length; i++){ if(valores[i] == pesquisa){ repeticoes++; // encontrou? vamos contar esta ocorrência } } // vamos mostrar o resultado System.out.println("O valor foi encontrado: " + repeticoes + " vezes"); } } |
Link para compartilhar na Internet ou com seus amigos: |
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
Como listar todo o conteúdo de um diretório usando a função listFiles() da classe File do JavaQuantidade de visualizações: 17307 vezes |
Nesta dica mostrarei como podemos usar o método listFiles() da classe File da linguagem Java para listar todo o conteúdo de um diretório. Note que usei os métodos isFile() e isDirectory(), também da classe File, para indicar se o item que está sendo lido é um arquivo ou diretório. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import java.io.*; public class Estudos{ public static void main(String[] args){ // nome e caminho do diretório File diretorio = new File("C:\\estudos_c"); // um vetor de arquivos File[] arquivos = diretorio.listFiles(); // foram encontrados arquivos ou diretórios? if(arquivos != null){ // obtemos a quantidade de arquivos int length = arquivos.length; // e percorremos os arquivos individualmente for(int i = 0; i < length; ++i){ File f = arquivos[i]; // é um arquivo? if(f.isFile()){ System.out.println(f.getName()); } else if(f.isDirectory()){ // é um diretório System.out.println("Diretorio: " + f.getName()); } } } } } Ao executar este código Java nós teremos um resultado parecido com: DICA.txt Diretorio: estudos Estudos_C.dev Estudos_C.exe Estudos_C.layout main.c main.o Makefile.win |
Java ::: Dicas & Truques ::: Data e Hora |
Java para iniciantes - Como usar a classe Date em suas aplicações JavaQuantidade de visualizações: 13993 vezes |
A classe Date pertence ao pacote java.util, e, embora muitos de seus métodos estejam em desuso (Deprecated), ainda encontraremos muito código Java que usa esta classe para trabalhar com datas e horas. Veja sua posição na hierarquia de classes Java:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- java.lang.Object java.util.Date Esta classe implementa as interfaces Serializable, Cloneable e Comparable<Date> e suas subclasses conhecidas são Date, Time, Timestamp (todas do pacote java.sql). As informações abaixo podem ser encontradas na documentação da classe Date. A classe Date representa um momento específico no tempo, com uma precisão de milisegundos. Antes do JDK 1.1, esta classe tinha duas funções adicionais. Ela permitia a interpretação de datas como valores de ano, mês, dia, hora, minuto e segundo. Também permitia a formatação e parsing de strings de datas. Infelizmente, a API para estas funções não facilitava a internacionalização. Assim, a partir do JDK 1.1, a classe Calendar deve ser usada para converter entre campos de datas e horas e a classe DateFormat deve ser usada para formatar e fazer o parsing de strings de datas. Os métodos correspondentes a estas funções estão em desuso (Deprecated) na classe Date. Embora a classe Date tenha sido projetada para refletir a hora universal coordenada (Coordinated Universal Time - UTC), ela pode não ser capaz de fazer isso corretamente, dependendo do sistema no qual a Java Virtual Machine esteja sendo executada. A grande maioria dos sistemas operacionais modernos assume que 1 dia = 24 × 60 × 60 = 86400 segundos em todos os casos. No UTC, contudo, de dois em dois anos, aproximadamente, há um segundo extra, chamado de "leap second" (a mesma idéia do ano bissexto). O leap second é sempre adicionado como o último segundo do dia e sempre nos dias 31 de dezembro ou 30 de junho. Por exemplo, o último minuto do ano de 1995 teve 61 segundos, graças ao segundo extra que foi adicionado. A maioria dos relógios dos computadores não são precisos o suficiente para refletir a distinção do leap second. Alguns padrões de computadores são definidos em termos da hora de Greenwich (Greenwich mean time - GMT), que é o equivalente ao Universal Time (UT). GMT é o nome "civil" para o padrão, UT é o nome "científico" para o mesmo padrão. A distinção entre UTC e UT é que UTC é baseado em um relógio atômico e UT é baseado em observações astronômicas, o que para todos os propósitos práticos não traz diferença significativa. Devido à rotação da terra não ser uniforme (ela desacelera ou acelera de formas complicadas), O UT nem sempre flui uniformente. Segundos extras (Leap seconds) são inseridos conforme necessário no UTC de forma a mantê-lo dentro dos 0.9 segundos do UT1, que é uma versão do UT com algumas correções aplicadas. Há outros sistemas de datas e horas também; por exemplo, a escala de tempo pelo sistema de posicionamento global baseado em satélite (satellite-based global positioning system - GPS) é sincronizado com o UTC mas não é ajustado para os segundos extras. Em todos os métodos da classe Date que aceitam ou retornam valores de ano, mês, dia, hora, minuto e segundos, as seguintes representações são usadas:
|
Java ::: Java + MySQL ::: Metadados da Base de Dados (Database Metadata) |
Java MySQL - Como obter os tipos de tabelas suportados pelo MySQL usando o método getTableTypes() da classe DatabaseMetaDataQuantidade de visualizações: 5314 vezes |
Em algumas situações precisamos obter os tipos de tabelas suportados por uma determinada versão do MySQL. Isso pode ser feito com uma chamada ao método getTableTypes() da classe com.mysql.jdbc.DatabaseMetaData. Um objeto desta classe é obtido a partir do método getMetaData() da interface Connection (para o driver com.mysql.jdbc.Driver, é claro). A assinatura do método getTableTypes() é: public ResultSet getTableTypes() throws SQLException Vamos ver um exemplo? Veja um trecho de código que usei para listar os tipos de tabelas disponíveis no MySQL 5.0: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudosbancodados; import java.sql.*; public class EstudosBancoDados{ public static void main(String[] args) { // strings de conexão String databaseURL = "jdbc:mysql://localhost/estudos"; String usuario = "root"; String senha = "osmar1234"; String driverName = "com.mysql.jdbc.Driver"; try { Class.forName(driverName).newInstance(); Connection conn = DriverManager.getConnection(databaseURL, usuario, senha); // vamos obter um objeto da classe com.mysql.jdbc.DatabaseMetaData DatabaseMetaData dbmd = conn.getMetaData(); // vamos obter os tipos de tabelas suportadas por esta versão do MySQL ResultSet tiposTabelas = dbmd.getTableTypes(); while(tiposTabelas.next()){ System.out.println(tiposTabelas.getString("TABLE_TYPE")); } // vamos fechar o ResultSet tiposTabelas.close(); } catch (SQLException ex) { System.out.println("SQLException: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("VendorError: " + ex.getErrorCode()); } catch (Exception e) { System.out.println("Problemas ao tentar conectar com o banco de dados: " + e); } } } O resultado da execução deste código foi: TABLE VIEW LOCAL TEMPORARY |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Camadas de escoamento Em escoamento laminar, o perfil de velocidade é parabólico. Em escoamento turbulento, não há uma definição correta, porém o escoamento acontece em quatro camadas. Quais são elas? A) Subcamada viscosa, camada de atrito de Darcy, camada de transição e camada externa. B) Subcamada viscosa, subcamada amortecedora, camada laminar e camada externa. C) Camada viscosa, camada amortecedora, camada de transição e camada limite de filme. D) Camada viscosa, camada amortecedora, camada de atrito de Darcy e camada limite de filme. E) Subcamada viscosa, subcamada amortecedora, camada de transição e camada externa. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Sistema domiciliar de abastecimento de água Instalações hidrossanitárias compreendem subsistemas de uma edificação para a correta captação, transporte e armazenagem de fluidos. Para o perfeito funcionamento dessas instalações, conhecer seus principais componentes é fundamental. Dessa forma, conforme a NBR 5626:2020, qual das opções a seguir está correta? A) Cavalete: conjunto padronizado de tubulações e conexões destinado à instalação do hidrômetro, situado no ramal predial. B) Extravasor: é caracterizado pela tubulação derivada do barrilete e destinado a alimentar os reservatórios. C) Alimentador predial: tubulação que se origina no reservatório e do qual derivam as colunas de distribuição se o tipo de abastecimento for indireto. D) Fonte de abastecimento: reservatório localizado na parte mais elevada de uma residência, destinada ao seu abastecimento direto. E) Instalação elevatória: sistema destinado a fornecer água para o sistema. Pode ser a rede pública da concessionária ou qualquer sistema particular de fornecimento de água. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Responsabilidade civil dos prepostos e preponentes Considera-se ___________ a entrega de papéis, bens ou valores ao ____________, encarregado pelo __________, se os recebeu sem ______________, salvo nos casos em que haja prazo para reclamação. Qual opção abaixo preenche corretamente as lacunas? A) Perfeita - preponente - preposto - protesto. B) Inválida - preponente - preposto - protesto. C) Inválida - preposto - preponente - protocolo. D) Perfeita - preposto - preponente - protocolo. E) Perfeita - preposto - preponente - protesto. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Analise o seguinte código Pythonletras = ['ab', 'cd'] for i in range(0, 2): letras.append(letras[i].upper()) print(letras) Qual é o resultado de sua execução? A) ['ab', 'cd'] B) ['AB', 'CD'] C) ['AB', 'CD', 'AB', 'CD'] D) ['ab', 'cd', 'AB', 'CD'] Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Materiais empregados para instalação de água fria e esgoto O Programa Brasileiro da Qualidade e Produtividade do Habitat - PBQP-H tem como uma de suas atribuições qualificar fornecedores de materiais para a construção civil, incluindo fabricantes de tubos e conexões de água fria e esgoto, tendo como diretrizes as Normas Técnicas Brasileiras (ABNT), especificamente a ABNT NBR 5626 para instalação predial de água fria e a ABNT NBR 8160 para sistemas prediais de esgoto sanitário. Nesse sentido, quanto à bitola de tubos e conexões para água fria e esgoto, é correto afirmar que: A) cada fabricante segue sua padronização, o que evita o encaixe de seus tubos e conexões com as de outros fabricantes. B) há uma combinação entre fabricantes parceiros, que comunicam o PBQP-H de suas parcerias e, então, fabricam peças com especificações dimensionais diferenciadas da concorrência. C) tubos e conexões são produzidos com diâmetros e tolerâncias conforme as Normas, com definição de espessura de parede, o que permite que sejam encaixados independentemente de fabricante. D) As normas citadas atendem especificamente à questão das cores dos tubos, de acordo com a aplicação. E) Em função das normas citadas, o construtor pode importar tubos de conexões de países que atendam às normas ISO e DIN. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Java - Como retornar a hora atual em Java usando um objeto da classe Calendar - Datas e Horas em Java |
Códigos Fonte |
Software 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 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 |