Você está aqui: Java ::: Coleções (Collections) ::: Vector |
Como copiar todos os elementos de um Vector Java para um arrayQuantidade de visualizações: 7774 vezes |
Muitas vezes precisamos obter um array a partir de um Vector. Isso pode ser feito usando-se o método copyInto(). Veja sua assinatura:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public void copyInto(Object[] anArray) Veja que os elementos do Vector são copiados para as mesmas posições no array. Assim, precisamos ficar atentos. Aqui podemos ter três exceções: NullPointerException (se o array fornecido como argumento for null), IndexOutOfBoundsException (se o array fornecido não for grande o suficiente para acomodar todos os elementos do array) e ArrayStoreException (se o tipo dos elementos do Vector não for de um tipo que pode ser armazenado no array fornecido como argumento). O trecho de código abaixo mostra como copiar todos os elementos de um Vector de String para um array de String: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.*; public class Estudos{ public static void main(String args[]){ // Cria o Vector Vector<String> nomes = new Vector<String>(); // adiciona itens ao Vector nomes.addElement("Osmar"); nomes.addElement("Marcos"); nomes.addElement("Ingrid"); // Cria o array String[] arrayNomes = new String[3]; // copia os elementos do Vector para o array nomes.copyInto(arrayNomes); // Exibe o conteúdo do array for(int i = 0; i < arrayNomes.length; i++){ System.out.println(arrayNomes[i]); } } } Ao executar este código Java nós teremos o seguinte resultado: Osmar Marcos Ingrid |
Link para compartilhar na Internet ou com seus amigos: |
MySQL ::: Dicas & Truques ::: Chaves, Índices e Restrições de Integridade Referencial |
Como criar chaves estrangeiras no MySQL - Como criar Foreign Keys em tabelas do MySQLQuantidade de visualizações: 88532 vezes |
O que é chave estrangeira (foreign key)? O papel da chave estrangeira é manter uma referência a um registro presente em outra tabela. Imagine o seguinte cenário. Temos uma tabela livros e uma tabela autores. Neste cenário, um autor pode escrever vários livros e um livro pode ser escrito somente por um determinado autor. Aqui temos uma relação 1:N, ou seja, um para muitos: um autor pode escrever zero, um ou vários livros. Comece analisando a tabela autores: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment nome varchar(45) NO - email varchar(45) NO - ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- CREATE TABLE autores( id int(10) unsigned NOT NULL auto_increment, nome varchar(45) NOT NULL, email varchar(45) NOT NULL, PRIMARY KEY(id) )ENGINE=InnoDB; Analise agora a tabela livros: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment titulo varchar(45) NO - paginas int(10) unsigned NO - id_autor int(10) unsigned NO - ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- CREATE TABLE livros( id INTEGER UNSIGNED NOT NULL DEFAULT NULL AUTO_INCREMENT, titulo VARCHAR(45) NOT NULL, paginas INTEGER UNSIGNED NOT NULL, id_autor INTEGER UNSIGNED NOT NULL, PRIMARY KEY(id) )ENGINE = InnoDB; O campo id é do tipo int, auto-incremento e foi marcado como chave primária. Dessa forma, o campo id identifica unicamente cada livro. O campo id_autor é do tipo int e sua função é guardar o id do autor que escreveu um determinado livro. Ao trazer o valor do campo id da tabela autores para o campo id_autor da tabela livros nós estamos relacionando as duas tabelas. O campo id_autor, neste cenário, é a chave estrangeira, pois seu valor sempre refletirá o valor do campo id da tabela autores (a única exceção é quando queremos deixar, temporariamente, um livro sem autor). Lembre-se, em uma relação 1:N, a chave estrangeira, em geral, ficará no lado N da relação. Integridade Referencial (Restrições de Chave Estrangeira) - Referential Integrity (Foreign Key Constraints) Imagine agora que você inseriu alguns registros na tabela autores e na tabela livros. Todas as vezes que o valor do campo id_autor na tabela livros for igual ao valor do campo id na tabela autores nós estaremos criando um relação autor-livro. É possível, a qualquer momento, listar um livro e saber de imediato o id do seu autor (isso permite fazer um join com a tabela autores para obter os dados do respectivo autor). Mas, o que acontecerá se excluirmos um registro na tabela autores e, mais tarde, descobrirmos que o campo id_autor da tabela livros guardava uma referência para o autor excluído? Teremos a quebra da integridade referencial. Para evitar tais situações, é responsabilidade do programador escrever códigos de verificações para prevenir estas ocorrências. Os bancos de dados, e principalmente o MySQL, possuem mecanismos para reforçar esta proteção: restrições de chave estrangeira. As restrições de chave estrangeira asseguram duas situações possíveis: 1) Não permitir que um autor seja excluído quando qualquer livro possuir uma referência a ele; 2) Se o autor for excluído, todos os livros que o referenciam também o serão. Definindo a chave estrangeira na tabela livros usando o atributo CONSTRAINT FOREIGN KEY REFERENCES Vamos agora reescrever o comando DDL CREATE TABLE para a tabela livros de forma a aplicar as restrições de chaves estrangeiras. Veja a nova versão: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- CREATE TABLE livros( id INTEGER UNSIGNED NOT NULL DEFAULT NULL AUTO_INCREMENT, titulo VARCHAR(45) NOT NULL, paginas INTEGER UNSIGNED NOT NULL, id_autor INTEGER UNSIGNED NOT NULL, PRIMARY KEY(id), CONSTRAINT livros_autores FOREIGN KEY(id_autor) REFERENCES autores(id) )ENGINE = InnoDB; A estrutura da tabela livros será alterada para aquela mostrada abaixo: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment titulo varchar(45) NO - paginas int(10) unsigned NO - id_autor int(10) unsigned NO MUL - ErrorNr. 1451: Cannot delete or update a parent row: a foreign key constraint fails (`estudos/livros`, CONSTRAINT `livros_autores` FOREIGN KEY (`id_autor`) REFERENCES `autores` (`id`)) Em mais dicas desta seção você aprenderá a usar as cláusulas ON DELETE e ON UPDATE e as ações RESTRICT, SET NULL, CASCADE e NO ACTION. Todas estas cláusulas e ações são usadas para reforçar a integridade referencial de suas bases de dados. |
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Como substituir todas as ocorrências de uma substring em uma string em Delphi sem considerar maiúsculas e minúsculas usando a função ReplaceText()Quantidade de visualizações: 11608 vezes |
Algumas vezes precisamos substituir todas as ocorrências de uma substring em uma string mas não queremos diferenciar letras maiúsculas de letras minúsculas. Em Delphi isso pode ser feito com o auxílio da função ReplaceText(). Esta função requer a string na qual a substituição ocorrerá, a substring a ser substituída e a nova substring. O resultado será uma nova string resultante da substituição. Veja o exemplo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm1.Button1Click(Sender: TObject); var frase: string; begin frase := 'PHP? Sim, eu gosto muito de PHP'; // vamos substituir todas as ocorrências de "PHP" por "Delphi' // sem considerar maiúsculas e minúsculas frase := ReplaceText(frase, 'Php', 'Delphi'); // vamos exibir o resultado ShowMessage(frase); end; Lembre-se de que esta função não diferencia maiúsculas e minúsculas. Não se esqueça de adicionar a unit StrUtils no uses do seu formulário. Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Delphi ::: Classes, Controles e Componentes ::: TRegistry (Registro do Windows) |
Como verificar se uma chave já existe no registro do Windows usando a função KeyExists() da classe TRegistry do DelphiQuantidade de visualizações: 16569 vezes |
Em algumas situações nós gostaríamos de verificar se uma determinada chave já existe no registro do Windows, talvez antes de criá-la, excluí-la ou tentar ler algum de seus valores. O método KeyExists() da classe TRegistry pode ser usado para esta finalidade. Este método recebe uma string representando a chave a ser pesquisada e retorna um valor Boolean indicando a existência da chave. Veja o trecho de código abaixo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm3.Button5Click(Sender: TObject); var reg: TRegistry; begin // uses Registry // vamos criar uma instância da classe TRegistry reg := TRegistry.Create; // a chave raiz padrão é HKEY_CURRENT_USER mas, por via das dúvidas // vamos reafirmar isso reg.RootKey := HKEY_CURRENT_USER; // vamos verificar a existência de uma chave a partir da chave raiz if reg.KeyExists('Arquivo de Códigos') then begin ShowMessage('A chave pesquisada existe.'); end else begin ShowMessage('A chave pesquisada não existe.'); end; // vamos liberar o registro reg.Free; end; Aqui nós estamos verificando a existência da chave "Arquivo de Códigos" a partir da chave raiz HKEY_CURRENT_USER. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
MySQL ::: Dicas & Truques ::: Chaves, Índices e Restrições de Integridade Referencial |
Como adicionar uma chave primária a uma tabela MySQL usando o comando ALTER TABLE ADD PRIMARY KEYQuantidade de visualizações: 7647 vezes |
Em algumas situações poderá ocorrer a necessidade, talvez por motivos de manutenção na base de dados, de criar uma chave primária para uma tabela MySQL já existente. Isso pode ser feito com o auxílio do comando DDL ALTER TABLE ADD PRIMARY KEY. Comece criando uma tabela livros sem chave primária. Veja o comando CREATE TABLE: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- CREATE TABLE livros( id int(11) unsigned NOT NULL, titulo varchar(45) NOT NULL, paginas int(10) unsigned NOT NULL )ENGINE=InnoDB; Se dispararmos um comando DESCRIBE livros veremos a seguinte estrutura: Field Type Null Key Default Extra id int(11) unsigned NO - - - titulo varchar(45) NO - - - paginas int(10) unsigned NO - - - ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- ALTER TABLE livros ADD PRIMARY KEY(id); Dispare o comando DESCRIBE livros novamente e veja o resultado. Agora o campo id está marcado como chave primária: Field Type Null Key Default Extra id int(11) unsigned NO PRI - - titulo varchar(45) NO - - - paginas int(10) unsigned NO - - - |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: NumPy Python Library |
Exercício Resolvido de Python NumPy - Como somar duas matrizes usando a biblioteca NumPy do PythonQuantidade de visualizações: 680 vezes |
Pergunta/Tarefa: Escreva um programa Python que usa a biblioteca NumPy para efetuar a soma de duas matrizes de mesma ordem, ou seja, mesmo número de linhas e colunas. Seu código deverá somar o primeiro elemento da matriz A com o primeiro elemento da matriz B, e assim por diante. Sua saída deverá ser parecida com: A primeira matriz é: [[4 1 3] [9 2 5]] A segunda matriz é: [[ 3 10 2] [ 1 13 4]] A matriz soma é: [[ 7 11 5] [10 15 9]] Veja a resolução comentada deste exercício em Python: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos importar a biblioteca NumPy import numpy as np # função principal do programa def main(): # vamos criar a primeira matriz a = np.array([[4, 1, 3], [9, 2, 5]]) # vamos criar a segunda matriz b = np.array([[3, 10, 2], [1, 13, 4]]) # vamos somar as duas matrizes c = a + b # e agora mostramos o resultado print("A primeira matriz é:\n{0}".format(a)) print("A segunda matriz é:\n{0}".format(b)) print("A matriz soma é:\n{0}".format(c)) if __name__== "__main__": main() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
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 |