Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Java ::: Coleções (Collections) ::: LinkedList

Convertendo uma LinkedList em um array de T

Quantidade de visualizações: 8456 vezes


O título desta dica é meio confuso, visto que à primeira vista, o Java não contém um tipo T. Na verdade, usei o T para definir um tipo genérico, ou seja, mostrarei como converter uma lista ligada LinkedList em um array de qualquer tipo, desde que este novo tipo seja uma interface implementada pelos elementos da lista ligada ou uma superclasse destes.

O primeiro passo é definir e alocar espaço para o novo array:
String array[] = new String[nomes.size()];
Veja que definimos o tamanho do array como sendo o tamanho da LinkedList. Aqui nós definimos o tipo como String porque a lista contém elementos String. Mas poderia ser CharSequence ou Object, uma vez que String herda de Object e implementa CharSequence. Veja como ficaria:
CharSequence array[] = new String[nomes.size()];
O passo seguinte é converter a lista ligada para o array criado anteriormente. Isso é feito da seguinte forma:
array = nomes.toArray(array);
Veja como fornecemos o tipo do array como argumento para o método toArray(). Abaixo você encontrará o código completo para o exemplo. Tenha cuidado. Se tentarmos fornecer um tipo que não seja uma interface implementada pelos elementos da lista ou uma superclasse destes, uma exceção do tipo ArrayStoreException será lançada:
Integer array[] = new Integer[nomes.size()];
array = nomes.toArray(array);
Eis a exceção lançada:
Exception in thread "main" 
  java.lang.ArrayStoreException: java.lang.String
        at java.util.LinkedList.toArray(Unknown 
  Source)
        at Estudos.main(Estudos.java:18)
E abaixo o código completo para o exemplo:
import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria uma LinkedList de Inteiros
    LinkedList<String> nomes = new 
      LinkedList<String>();
    
    // adiciona elementos no final da lista 
    // ligada
    nomes.add("Osmar");
    nomes.add("Carlos");
    nomes.add("Marcelo");

    // vamos converter esta lista em um
    // array de String
    String array[] = new String[nomes.size()];
    array = nomes.toArray(array);

    // exibe o resultado
    for(int i = 0; i < array.length; i++){
      System.out.println(array[i]);
    }
  } 
}


Link para compartilhar na Internet ou com seus amigos:

JavaScript ::: Elementos de Formulários HTML ::: input type file Element/Object

Como obter a quantidade de arquivos que o usuário selecionou em um input type file

Quantidade de visualizações: 3832 vezes
Em algumas situações nós precisamos saber quantos arquivos o usuário selecionou em um elemento input type file. Para isso podemos usar a propriedade length do FileList que representa a lista de arquivos no input file. Veja o exemplo a seguir:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Estudos JavaScript</title>

</head>
<body>

<form>
  <input id="arquivo" onChange="contarArquivos()" name="arquivo" multiple type="file">
</form>

<script type="text/javascript">
  function contarArquivos(){
......


Note que tiramos proveito do evento onChange() do input file para obter a informação desejada no exato momento que o usuário escolhe o(s) arquivos(s). Neste exemplo eu criei um input file multiple, ou seja, o usuário pode escolher mais de um arquivo por vez (em geral pressionando a tecla Ctrl para múltiplas seleções).


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

Como usar a função max() do PHP para obter o maior entre dois ou mais valores

Quantidade de visualizações: 10206 vezes
A função max() do PHP é útil quando precisamos obter o maior entre dois ou mais valores. Veja um exemplo de seu uso:

<?
  // vamos usar a função max() para obter o maior
  // entre três valores inteiros
  $maior = max(5, 12, 4);
......


Quando executamos este exemplo temos o seguinte resultado:

O maior valor é: 12

Veja que é possível também fornecer uma matriz para a função max(). Neste caso a função retornará o elemento com o maior valor na matriz. Veja:

<?
  // vamos usar a função max() para obter o elemento
  // com maior valor em uma matriz
  
  
  // vamos criar uma matriz com cinco elementos
  $valores = array(9, 3, 21, 49, 2);  
......


Ao executar este exemplo você terá o seguinte resultado:

O maior valor é: 49
......



JavaScript ::: Dicas & Truques ::: Strings e Caracteres

Como remover todos os espaços de uma string em JavaScript usando uma função personalizada remover_espacos()

Quantidade de visualizações: 13691 vezes
Nesta dica mostrarei como é possível escrever uma função JavaScript que remove todos os espaços de uma string. É claro que você poderá, com uma pequena modificação, alterá-la para que ela substitua quais outros caracteres. Esse é também um bom exercício para a criação de funções na linguagem JavaScript.

Veja o código completo:

<!doctype html>
<html>
<head>
 <title>Estudos JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // função personalizada que remove os
  // espaços de uma string
  function remover_espacos(str){
    var r = "";
    for(var i = 0; i < str.length; i++){
      if(str.charAt(i) != ' '){
        r += str.charAt(i);
      }
......


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

Gosto muito de JavaScript e HTML
GostomuitodeJavaScripteHTML


Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: DataFrame

Como usar o objeto DataFrame da biblioteca Pandas do Python

Quantidade de visualizações: 1597 vezes
A biblioteca Pandas do Python é uma das preferidas para o estudo e desenvolvimento de soluções envolvendo Big Data, Data Science, Data Mining, Machine Learning, Inteligência Artificial, etc. E o objeto DataFrame é uma das partes mais importantes dessa biblioteca.

Um objeto DataFrame é uma estrutura de dados bidimensional, ou seja, uma tabela contendo linhas e colunas. Nesse formato tabular, que pode ter seu tamanho redimensionado, as informações contidas no objeto DataFrame podem ser atualizadas de acordo com as necessidades do nosso código. Além disso, linhas e colunas podem ser adicionadas ou excluídas em tempo de execução.

A forma mais comum de criarmos um DataFrame é usando o seu construtor. Veja:

# importamos a biblioteca Pandas
import pandas as pd

def main():
  # conteúdo do DataFrame
  produtos = [['Notebook AB43', 43], ['Tela LED', 87],
    ['Bateria 16 Volts', 120]]

  # vamos construir o DataFrame
......


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

            Produto  Estoque
0     Notebook AB43       43
1          Tela LED       87
2  Bateria 16 Volts      120


Aqui nós usamos uma list contendo três lists, ou seja, uma matrix de três linhas e duas colunas. Veja como obter o mesmo resultado usando um dicionário:

# importamos a biblioteca Pandas
import pandas as pd

def main():
  # conteúdo do DataFrame
  produtos = {'Produto':['Notebook AB43', 'Tela LED', 
    'Bateria 16 Volts'], 'Estoque':[43, 87, 120]}
......


Execute este código e verá que o DataFrame resultante é o mesmo do código anterior.


Delphi ::: VCL - Visual Component Library ::: TComboBox

Como detectar o evento OnSelect da classe TComboBox do Delphi

Quantidade de visualizações: 13088 vezes
O evento OnSelect da classe TComboBox é disparado quando o usuário seleciona um item (uma string) na lista drop-down do componente. Este evento possui a seguinte assinatura:

property OnSelect: TNotifyEvent;

Um evento do tipo TNotifyEvent não possui parâmetros específicos ao evento ocorrido. Assim, no evento OnSelect temos acesso somente ao parâmetro Sender, do tipo TObject, que nos informa em qual componente o evento ocorreu.

Vamos ver um exemplo? Veja o código para o tratamento do evento OnSelect de um ComboBox. Aqui, todas as vezes que o evento disparar, nós vamos exibir o valor do novo item:

procedure TForm3.ComboBox1Select(Sender: TObject);
begin
  // vamos mostrar o novo item selecionado
......


Note que o evento OnSelect é disparado somente após a mudança de seleção e, consequentemente, a atualização da propriedade Text, que deverá refletir o novo item.


Desafios, Exercícios e Algoritmos Resolvidos de Delphi

Veja mais Dicas e truques de Delphi

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

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.