![]() |
|||||
|
Java ::: Reflection (introspecção) e RTI (Runtime Type Information) ::: Passos Iniciais |
Como retornar o nome de uma classe Java usando os métodos getClass() e getName()Quantidade de visualizações: 13591 vezes |
Entre os métodos que uma classe herda da classe Object, está o método getClass(). Este método retorna um objeto da classe Class e podemos tirar proveito disso para fazer em encadeamento e chamar também o método getName() para obter o nome de uma determinada classe. Veja o exemplo no qual obtemos uma String contendo o nome de uma classe (juntamente com o nome do pacote ao qual ela pertence): import javax.swing.*; public class Estudos{ public static void main(String args[]){ JButton btn = new JButton(); String nomeClasse = btn.getClass().getName(); System.out.println(nomeClasse); // exibirá: "javax.swing.JButton" System.exit(0); } } Ao executarmos este código nós teremos o seguinte resultado: javax.swing.JButton |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres |
Exercícios Resolvidos de Java - Como retornar o código ASCII associado a um caractere em Java - Ler um caractere e retornar o código ASCII correspondenteQuantidade de visualizações: 601 vezes |
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar um caractere (letra ou número) e mostre o código ASCII correspondente. Sua saída deverá ser parecida com: Informe um caractere: A Você informou o caractere: A O código ASCII correspondente é: 65 Veja a resolução comentada deste exercício em Java: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar uma letra, símbolo ou pontuação System.out.print("Informe um caractere: "); // vamos ler o caractere informado char caractere = entrada.nextLine().charAt(0); // agora vamos obter o código ASCII correspondente int codigo = (int)caractere; // e mostramos o resultado System.out.println("Você informou o caractere: " + caractere); System.out.println("O código ASCII correspondente é: " + codigo); } } O Código Padrão Americano para o Intercâmbio de Informação (do inglês American Standard Code for Information Interchange - ASCII, pronunciado [áski]) é um sistema de representação de letras, algarismos e sinais de pontuação e de controle, através de um sinal codificado em forma de código binário (cadeias de bits formada por vários 0 e 1), desenvolvido a partir de 1960, que representa um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, algarismos arábicos, sinais de pontuação e sinais matemáticos) e 33 sinais de controle, utilizando 7 bits para representar todos os seus símbolos. |
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Apostila Delphi para iniciantes - Como acessar os caracteres de uma string individualmenteQuantidade de visualizações: 17916 vezes |
Em algumas situações pode ser necessário acessar os caracteres de uma palavra, frase ou texto individualmente. Em Delphi isso pode ser feito usando-se a indexação de matrizes. Tenha em mente, porém, que o índice em Delphi começa em 1 e não 0, como na maioria das linguagens. Veja um trecho de código no qual acessamos o primeiro caractere de uma string: procedure TForm1.Button1Click(Sender: TObject); var nome: string; letra: Char; begin nome := 'Osmar J. Silva'; // vamos obter a primeira letra letra := nome[1]; // vamos exibir o resultado ShowMessage('A primeira letra é: ' + letra); end; Veja outro exemplo, no qual usamos um laço for para visitar cada um dos caracteres e exibí-lo: procedure TForm1.Button1Click(Sender: TObject); var nome: string; letra: Char; i: integer; begin nome := 'Osmar'; for i := 1 to Length(nome) do begin letra := nome[i]; ShowMessage('O ' + IntToStr(i) + 'º caractere é: ' + letra); end; end; Assim como acessamos os caracteres individuais de uma string para leitura, podemos fazê-lo também para alterações. Veja um trecho de código no qual trocamos o terceiro caractere de uma string: procedure TForm1.Button1Click(Sender: TObject); var nome: string; begin nome := 'Osmar'; // vamos alterar o terceiro caractere nome[3] := 'K'; ShowMessage(nome); end; Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
LISP ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço loop para contar de 1 até 10 em LispQuantidade de visualizações: 735 vezes |
A estrutura de repetição loop da linguagem Common Lisp é o laço mais simples fornecido pela linguagem. Este laço nos permite repetir uma ou mais instruções de código repetidamente, até que o comando return seja encontrado, o que faz com que o laço seja interrompido. Veja no trecho de código abaixo como podemos usar o laço loop da Common Lisp para contar e exibir os valores de 1 até 10: ( ; vamos declarar a variável que vamos usar let (numero) ; vamos inicializar a variável com o valor 1 (setq numero 1) ; agora iniciamos o laço (loop ; escrevemos o valor da variável (write numero) ; aumentamos o valor da variável em 1 (setq numero (+ numero 1)) ; provocamos uma quebra de linha (terpri) ; e fazemos o teste da continuidade (when (> numero 10) (return)) ) ) Ao executarmos este código Common Lisp nós teremos o seguinte resultado: 1 2 3 4 5 6 7 8 9 10 Veja que usamos a macro when para testar o ponto de parada do laço. Note ainda o uso da função terpri da Common Lisp para provocar uma quebra de linha na saída do programa. |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como excluir um arquivo ou imagem em PHP usando a função unlink()Quantidade de visualizações: 20760 vezes |
Esta dica mostra como podemos excluir um arquivo ou uma imagem usando PHP. Para isso vamos usar a função unlink(). Esta função recebe o caminho e nome do arquivo a ser excluído e retorna TRUE se a exclusão foi feita com sucesso e FALSE caso contrário. Veja o código: <?php // caminho e nome do arquivo (o diretório no qual o arquivo // a ser excluído está deve ter permissão de escrita $arquivo = "/home/xxxx/arquivos/dados.txt"; // vamos excluir if(unlink($arquivo)){ echo "Arquivo excluído com sucesso."; } else{ echo "Não foi possível excluir o arquivo."; } ?> Se você pretende excluir um diretório e não um arquivo, use a função rmdir(). |
Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de Dart - Escreva um programa Dart para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no arrayQuantidade de visualizações: 692 vezes |
Pergunta/Tarefa: Dado o seguinte vetor de inteiros: // vamos declarar e construir um vetor (List) de 8 inteiros List<int> valores = [0, 3, 0, 5, 7, 4, 0, 9]; Sua saída deverá ser parecida com: Vetor na ordem original: 0 3 0 5 7 4 0 9 Vetor com os zeros deslocados para o final: 3 5 7 4 9 0 0 0 Veja a resolução comentada deste exercício usando Dart: // Vamos importar a biblioteca dart:io import "dart:io"; void main(){ // vamos declarar e construir um vetor (List) de 8 inteiros List<int> valores = [0, 3, 0, 5, 7, 4, 0, 9]; // vamos mostrar o vetor na ordem original print("Vetor na ordem original:\n"); for(int i = 0; i < valores.length; i++){ stdout.write("${valores[i]} "); } // vamos inicializar j como 0 para que ele aponte para // o primeiro elemento do vetor int j = 0; // agora o laço for percorre todos os elementos do vetor, // incrementanto a variável i e deixando o j em 0 for(int i = 0; i < valores.length; i++){ // encontramos um valor que não é 0 if(valores[i] != 0){ // fazemos a troca entre os elementos nos índices // i e j int temp = valores[i]; valores[i] = valores[j]; valores[j] = temp; // e avançamos o j para o elemento seguinte j++; } } // agora mostramos o resultado print("\n\nVetor com os zeros deslocados para o final:\n"); for(int i = 0; i < valores.length; i++){ stdout.write("${valores[i]} "); } } Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes. |
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar o tamanho de uma string em Ruby usando a função sizeQuantidade de visualizações: 8442 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 # na string tamanho = frase.size # exibe o resultado puts "A frase contém " + tamanho.to_s + " caracteres" Ao executar este código Ruby nós teremos o seguinte resultado: A frase é: Gosto de PHP A frase contém 12 caracteres |
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: 5494 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: 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 |
VB.NET ::: Desafios e Lista de Exercícios Resolvidos ::: VB.NET Básico |
Exercício Resolvido de VB.NET - Um programa VB.NET que receberá a duração de um evento expresso em segundos e exiba-o expresso em horas, minutos e segundosQuantidade de visualizações: 613 vezes |
Pergunta/Tarefa: Escreva um programa VB.NET que receberá a duração de um evento expresso em segundos e exiba-o expresso em horas, minutos e segundos. Seu programa deverá exibir uma saída parecida com: Informe a duração do evento em segundos: 3712 Duração do evento: 01:01:52 Veja a resolução comentada deste exercício usando VB.NET: Imports System Module Program ' função principal do programa VB.NET Sub Main(args As String()) ' vamos solicitar a duração do evento em segundos Console.Write("Informe a duração do evento em segundos: ") Dim duracao_segundos As Integer = Int32.Parse(Console.ReadLine()) ' vamos obter a quantidade de horas do evento Dim horas As Integer = duracao_segundos \ 3600 ' vamos obter os minutos Dim minutos As Integer = (duracao_segundos \ 60) Mod 60 ' vamos obter os segundos restantes Dim segundos As Integer = duracao_segundos Mod 60 ' vamos exibir a duração do evento em horas, minutos e segundos Console.Write("Duração do evento: {0}:{1}:{2}", horas.ToString("D2"), minutos.ToString("D2"), segundos.ToString("D2")) Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...") ' pausa o programa Console.ReadKey() End Sub End Module |
Java ::: Classes e Componentes ::: JTextArea |
Java Swing - Como definir a cor de fundo para um JTextAreaQuantidade de visualizações: 108 vezes |
Nesta dica mostrarei como podemos aplicar uma cor de fundo a um controle área de texto, ou seja, um JTextArea do Java Swing. Para isso nós só precisamos fazer uma chamada ao seu método setBackground() e passar a cor desejada. Veja um exemplo de como isso pode ser feito: textArea = new JTextArea(10, 20); // Define a cor de fundo textArea.setBackground(Color.YELLOW); Note que aqui nós temos uma variável chamada textArea, do tipo JTextArea. |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |