Você está aqui: Java ::: Pacote java.util ::: ArrayList

Java Avançado - Como ordenar uma ArrayList em ordem crescente de elementos repetidos

Quantidade de visualizações: 2365 vezes
Em algumas situações nós gostaríamos de ordenar uma List (uma ArrayList, por exemplo) em ordem crescente ou decrescente baseado no número de vezes que um determinado elemento se repete. Este é um exercício interessante, pois mostra como podemos combinar a interface List, a classe ArrayList, a interface Map, a classe HashMap e ainda o método sort() da classe Collections.

Nosso objetivo é ordenar um vetor de inteiros contendo alguns elementos repetidos, de forma que o resultado final seja algo como:

2, 3, 4, 6, 50, 9, 9, 7, 7, 7

Veja o código completo para o exemplo. Note como pedimos para o usuário informar 10 valores inteiros e depois os ordenamos por ordem crescente de quantidade de repetições dos elementos (elementos com menos repetições vêm primeiro):

package arquivodecodigos;

import java.util.*;
 
public class Estudos{
  public static void main(final String[] args) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    // uma list de inteiros
    List<Integer> valores = new ArrayList();
    
    // vamos pedir para o usuário informar 10 valores inteiros
    for(int i = 0; i < 10; i++){
      System.out.print("Informe um valor inteiro: ");
      // vamos adicionar este valor à lista
      valores.add(Integer.parseInt(entrada.nextLine()));
    }
    
    // agora criamos um Map para contar as repetições
    Map<Integer, Integer> quants = new HashMap();
   
    // e percorremos todos os elementos da segunda lista
    for(Integer item : valores){
      Integer quant = quants.get(item);
......


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

Informe um valor inteiro: 9
Informe um valor inteiro: 9
Informe um valor inteiro: 4
Informe um valor inteiro: 2
Informe um valor inteiro: 50
Informe um valor inteiro: 7
Informe um valor inteiro: 3
Informe um valor inteiro: 7
Informe um valor inteiro: 7
Informe um valor inteiro: 6
[2, 3, 4, 6, 50, 9, 9, 7, 7, 7]

Link para compartilhar na Internet ou com seus amigos:

C# ::: Dicas & Truques ::: Strings e Caracteres

Como comparar strings em C# usando o método Equals() da classe String

Quantidade de visualizações: 21457 vezes
Em várias situações nós precisamos efetuar a comparação de strings (palavras, frase e textos) na linguagem C#. Para isso podemos usar o método Equals() da classe String. Este método retorna true se as duas strings forem idênticas e false em caso contrário.

Veja o código completo para o exemplo:

using System;

namespace Estudos{
  class Program{
    static void Main(string[] args) {
      string frase1 = "gosto de java e c#";
      string frase2 = "Gosto de Java e C#";

      if (frase1.Equals(frase2))
......


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

As duas strings são diferentes.


Ruby ::: Dicas & Truques ::: Strings e Caracteres

Como retornar o tamanho de uma string em Ruby usando a função size

Quantidade de visualizações: 8041 vezes
Em várias situações nós precisamos obter e retornar a quantidade de caracteres em uma palavra, frase ou texto em Ruby. Para isso nós podemos usar a função size, que retorna um inteiro contendo a quantidade de caracteres na string.

Veja um exemplo de seu uso:

# vamos declarar uma string
frase = "Gosto de PHP"

# vamos mostrar a string
puts "A frase é: " + frase

# vamos obter a quantidade de caracteres 
......


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

A frase é: Gosto de PHP
A frase contém 12 caracteres


Dart ::: Dicas & Truques ::: Aplicativos e Outros

Como calcular a distância entre dois pontos na terra em Dart

Quantidade de visualizações: 1162 vezes
Nesta dica mostrarei como calcular a distância em quilômetros entre dois pontos na terra dadas suas latitudes e longitudes. Neste exemplo eu coloquei o valor de 6378.137 para o raio da terra, mas você pode definir para o valor que achar mais adequado.

O cálculo usado neste código se baseia na Fórmula de Haversine, que determina a distância do grande círculo entre dois pontos em uma esfera, dadas suas longitudes e latitudes.

Veja o código Dart completo:

// Vamos importar a biblioteca dart:io
import "dart:io";

// vamos importar a biblioteca dart:math
import "dart:math";

void main(){
  // vamos ler as latitudes e longitudes das duas
  // localizações
  stdout.write("Informe a primeira latitude: ");
  double lat1 = double.parse(stdin.readLineSync());
  stdout.write("Informe a primeira longitude: ");
  double lon1 = double.parse(stdin.readLineSync());
  stdout.write("Informe a segunda latitude: ");
  double lat2 = double.parse(stdin.readLineSync());
  stdout.write("Informe a segunda longitude: ");
  double lon2 = double.parse(stdin.readLineSync());
  
  // vamos calcular a distância entre os dois pontos em Kms
  double distancia = calcularDistancia(lat1, lat2, lon1, lon2);
    
  // mostramos o resultado
  print("Distância entre os dois pontos: ${distancia} kms");
}

// função que recebe dois pontos na terra e retorna a distância
......


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

Informe a primeira latitude: -16.674551
Informe a primeira longitude: -49.303598
Informe a segunda latitude: -15.579321
Informe a segunda longitude: -56.10009
A distância entre os dois pontos é: 736.9183827638687kms

Neste exemplo eu calculei a distância entre as cidades de Goiânia-GO e Cuibá-MT.

A latitude é a distância ao Equador medida ao longo do meridiano de Greenwich. Esta distância mede-se em graus, podendo variar entre 0o e 90o para Norte(N) ou para Sul(S). A longitude é a distância ao meridiano de Greenwich medida ao longo do Equador.


C++ ::: Dicas & Truques ::: Recursão (Recursividade)

Como calcular potência em C++ usando uma função recursiva

Quantidade de visualizações: 18975 vezes
Nesta dica mostrarei como podemos efetuar cálculo de potência em C++ usando recursividade, ou seja, uma função que chama a si mesma repetidamente, até que o caso base (condição de parada) seja alcançado. Veja que informaremos a base e o expoente e a função nos retornará a potência da base informada.

Veja o código C++ completo para o exemplo:

#include <iostream>

using namespace std;

// função recursiva que calcula a potência de
// um inteiro
int potencia(int base, int expoente){
  // caso base
  if(expoente == 0){
    return 1;
  }
  // efetua mais uma chamada recursiva
  else{
    return base * potencia(base, expoente - 1);
  }
} 
......


Ao executar este código C++ nós teremos o seguinte resultado:

3 elevado a 4 = 81


JavaScript ::: Dicas & Truques ::: Matemática e Estatística

JavaScript para matemática - Como obter o maior entre dois ou mais valores numéricos usando a função max() do JavaScript

Quantidade de visualizações: 10482 vezes
A função max() do objeto Math da linguagem JavaScript pode ser usada quando temos dois ou mais valores numéricos e gostaríamos de retornar o maior deles. Note que esta função não aceita um vetor (array) como argumento, ou seja, os valores devem ser fornecidos de forma literal ou passados como variáveis independentes.

Veja o código JavaScript completo para o exemplo:

<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>

<script type="text/javascript">
  var n1 = 45;
......


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

O maior número é 43

O retorno do método max() é um objeto Number representando o maior dos valores fornecidos. Se nenhum argumento for informado, o retorno será um objeto Infinity, enquanto um objeto NaN será retornado se algum dos valores fornecidos não for um valor numérico válido.


Desafios, Exercícios e Algoritmos Resolvidos de JavaScript

Veja mais Dicas e truques de JavaScript

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á 20 usuários muito felizes estudando em nosso site.