![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
Java ::: Reflection (introspecção) e RTI (Runtime Type Information) ::: Passos Iniciais |
Java Reflection - Como exibir os nomes de todas as superclasses de uma determinada classe usando introspecção em JavaQuantidade de visualizações: 8058 vezes |
Nesta dica veremos como tirar proveito dos métodos getClass(), getName() e getSuperclass() da classe Class da linguagem Java para exibirmos todas as super classes de um determinada classe, até chegarmos à super classe mais alta na hierarquia, ou seja, a classe Object. Note como usamos um objeto da classe Stack para criarmos uma estrutura de dados do tipo pilha que nos permite obter os nomes das super classes e depois exibir os mesmos na ordem inversa. Veja o código completo para o exemplo: package arquivodecodigos; import java.util.Stack; import javax.swing.*; public class Estudos{ // vamos precisar de uma pilha aqui static Stack<String> pilha = new Stack(); public static void main(String args[]){ // Exibe todas as superclasses de JPanel JPanel panel = new JPanel(); obterSuperclasses(panel); // agora vamos exibir os resultados na ordem // contrária que eles foram obtidos int cont = 0; while(pilha.size() > 0){ // insere espaços antes String ident = ""; for(int i = 0; i < cont; i++){ ident = ident + " "; } System.out.println(ident + pilha.pop()); cont++; } System.exit(0); } static void obterSuperclasses(Object obj){ // vamos adicionar este valor na pilha pilha.push(obj.getClass().getName()); Class cls = obj.getClass(); Class superclass = cls.getSuperclass(); while(superclass != null){ String className = superclass.getName(); // vamos adicionar este valor na pilha pilha.push(className); cls = superclass; superclass = cls.getSuperclass(); } } } Ao executarmos este código Java nós teremos o seguinte resultado: java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JPanel |
JavaScript ::: Dicas & Truques ::: Matemática e Estatística |
Como arredondar um valor numérico de ponto-flutuante para cima usando a função ceil() do objeto Math do JavaScriptQuantidade de visualizações: 14578 vezes |
A função ceil() do objeto Math do JavaScript nos permite arrendondar um valor float ou double para o próximo inteiro maior. Dessa forma, um valor 1.45 será convertido para 2. Veja o código completo para o exemplo: <html> <head> <title>Estudando JavaScript</title> </head> <body> <script type="text/javascript"> var valor = 2.85; document.write("O resultado do arredondamento de " + valor + " é " + Math.ceil(valor)); </script> </body> </html> Ao executarmos este código nós teremos o seguinte resultado: O resultado do arredondamento de 2.85 é 3 |
Java ::: Coleções (Collections) ::: HashSet |
Java HashSet - Como usar o método add() para adicionar novos elementos a um HashSet da linguagem JavaQuantidade de visualizações: 5445 vezes |
Novos elementos podem ser adicionados a um HashSet por meio do método add(), definido originalmente na interface Collection<E> e sobrescrevendo a versão herdada de AbstractCollection<E>. Este método possui a seguinte assinatura:public boolean add(E e) package estudos; import java.util.HashSet; import java.util.Iterator; import java.util.Set; public class Estudos{ public static void main(String[] args) { // vamos criar uma instância da classe HashSet Set<Integer> conjunto = new HashSet<>(); // vamos tentar inserir três inteiros neste conjunto if(conjunto.add(5)){ System.out.println("Elemento inserido com sucesso."); } else{ System.out.println("O elemento não foi inserido."); } if(conjunto.add(7)){ System.out.println("Elemento inserido com sucesso."); } else{ System.out.println("O elemento não foi inserido."); } if(conjunto.add(5)){ System.out.println("Elemento inserido com sucesso."); } else{ System.out.println("O elemento não foi inserido."); } // vamos exibir os elementos inseridos com sucesso Iterator iterator = conjunto.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } } } Ao executar este código teremos o seguinte resultado: Elemento inserido com sucesso. Elemento inserido com sucesso. O elemento não foi inserido. 5 7 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria, Trigonometria e Figuras Geométricas |
Exercícios Resolvidos de Java - Como calcular o volume e a área de um cilindro em Java - Geometria Espacial em JavaQuantidade de visualizações: 1096 vezes |
Pergunta/Tarefa: O Cilindro ou Cilindro Circular é um sólido geométrico alongado e arredondado que possui o mesmo diâmetro ao longo de todo o comprimento. Essa figura geométrica, que faz parte dos estudos de geometria espacial, apresenta dois círculos com raios de medidas equivalentes os quais estão situados em planos paralelos. Veja a imagem a seguir: ![]() Escreva um programa Java que pede para o usuário informar o raio e a altura de um cilindro e calcule e mostre o seu volume e sua área de superfície. Os valores informados pelo usuário deverão ser do tipo double e os resultados deverão também ser do tipo double. Para auxiliar nos cálculos, a fórmula do volume do cilindo é: \[ \text{V} = \pi \cdot r^2 \cdot \text{h} \] Já a fórmula da área do cilindro é: \[ \text{A} = \text{2} \cdot \pi \cdot r \cdot (r + h) \] Sua saída deve ser parecida com: Informe o raio do cilindro: 5 Informe a altura do cilindro: 8 O volume do cilindro é: 628.3185307179587 A área do cilindro é: 408.4070449666731 Veja a resolução comentada deste exercício usando Java: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double raio, altura, volume, area; // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos ler o raio e a altura do cilindro System.out.print("Informe o raio do cilindro: "); raio = Double.parseDouble(entrada.nextLine()); System.out.print("Informe a altura do cilindro: "); altura = Double.parseDouble(entrada.nextLine()); // vamos calcular o volume do cilindro volume = Math.PI * Math.pow(raio, 2) * altura; // agora vamos calcular a área do cilindro area = 2 * Math.PI * raio * (raio + altura); // e mostramos o resultado System.out.println("O volume do cilindro é: " + volume); System.out.println("A área do cilindro é: " + area); } } |
Java ::: Classes e Componentes ::: JTextField |
Java Swing - Como definir a cor do texto de um JTextField usando o método setForeground()Quantidade de visualizações: 10715 vezes |
Nesta dica eu mostro como podemos usar o método setForeground() da classe JTextField para definir a cor de seu texto. Note que esta função pede um objeto da classe Color, por isso, neste exemplo, forneci o valor Color.BLUE. Veja o código Java Swing completo: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Estudos extends JFrame{ JTextField texto; public Estudos() { super("Estudos Swing"); Container c = getContentPane(); c.setLayout(new FlowLayout(FlowLayout.LEFT)); // Cria um botão JButton btn = new JButton("Definir cor do texto"); btn.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ // vamos definir a cor do texto como azul texto.setForeground(Color.BLUE); } } ); // Cria o JTextField texto = new JTextField(10); // Adiciona o botão à janela c.add(btn); // Adiciona o JTextField à janela c.add(texto); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
C# ::: Coleções (Collections) ::: List<T> |
Como retornar a quantidade de elementos que podem ser armazenados na List do C# sem redimensioná-laQuantidade de visualizações: 7472 vezes |
O objeto List do C# possui uma propriedade Capacity que nos retorna a quantidade de elementos que podem ser inseridos na lista antes que ela tenha que redimensionar o seu array interno. Quando o tamanho da lista excede essa capacidade, automaticamente o array interno é redimensionado de forma a acomodar esses novos itens. Nessa dica eu mostro como podemos retornar o valor dessa propriedade. Veja: using System; using System.Collections.Generic; namespace Estudos { class Principal { static void Main(string[] args) { List<int> valores = new List<int>(); // insere valores na lista valores.Add(4); valores.Add(2); valores.Add(87); valores.Add(23); valores.Add(100); // obtém a capacidade da lista // NOTA: Capacity é o número de elementos que a lista // pode armazenar antes de ser preciso redimensioná-la. int capac = valores.Capacity; Console.WriteLine("A capacidade da lista é de " + capac + " elementos."); Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: A capacidade da lista é de 8 elementos. |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como obter o índice do item selecionado em uma ListBox do Delphi usando a propriedade ItemIndex da classe TListBoxQuantidade de visualizações: 15175 vezes |
Muitas vezes precisamos saber o índice do item atualmente selecionado em uma ListBox. Para isso podemos obter o valor da propriedade ItemIndex. Esta propriedade retorna um valor inteiro correspondente ao índice do item selecionado. O primeiro item da lista possui o índice 0. Se nenhum item estiver selecionado, ItemIndex retorna -1. Veja o exemplo: procedure TForm1.Button2Click(Sender: TObject); var indice: Integer; begin // vamos obter o índice do item selecionado na ListBox indice := ListBox1.ItemIndex; // mostra o resultado ShowMessage('O índice do item selecionado é: ' + IntToStr(indice)); end; Note que esta propriedade não se aplica às ListBoxes de seleção múltipla. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço while do Python - Python para iniciantesQuantidade de visualizações: 15551 vezes |
O laço while da linguagem Python permite executar um bloco de códigos repetidamente até que uma condição seja verdadeira. Opcionalmente, uma cláusula else pode ser usado com o while em Python (a parte else será executada mesmo que o corpo principal do laço não seja executado). Veja um exemplo:# função principal do programa def main(): numero = 0 while numero <= 10: print(numero) numero = numero + 1 else: print("Terminei") if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: 0 1 2 3 4 5 6 7 8 9 10 Terminei Veja um exemplo de um laço while que nunca será executado: # função principal do programa def main(): numero = 0 while numero > 10: print(numero) numero = numero + 1 if __name__== "__main__": main() E agora um exemplo de laço usando um valor booleano: # função principal do programa def main(): continuar = True valor = 0 while continuar: print(valor) if valor > 5: continuar = False else: valor = valor + 1 if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: 0 1 2 3 4 5 6 |
R ::: Dicas de Estudo e Anotações ::: Variáveis e Constantes |
Como usar a função class() da linguagem R para verificar o tipo de dados de uma variávelQuantidade de visualizações: 1302 vezes |
Na linguagem R nós não precisamos informar o tipo de dados de uma variável no momento de sua declaração e, consequentemente, atribuição de seu valor inicial. No entanto, a linguagem permite que as variáveis, no decorrer da execução do programa, assumam outros tipos de dados. Dessa forma, em várias situações nós podemos precisar verificar qual o tipo de dados armazenado em um variável em um determinado momento, talvez, com o propósito de não assumir riscos durante um cálculo envolvendo inteiros e decimais. A função class() da linguagem R recebe o nome de uma variável e nos informa o seu tipo de dados. Veja um exemplo de seu uso: > x <- 10 [ENTER] > class(x) [ENTER] [1] "numeric" > x <- "Java" [ENTER] > class(x) [ENTER] [1] "character" > x <- TRUE [ENTER] > class(x) [ENTER] [1] "logical" > x <- 5L [ENTER] > class(x) [ENTER] [1] "integer" > Execute estas linhas na janela de comandos do R ou em um script e veja como a variável x assumiu, no decorrer da execução, os tipos numeric, character, logical e integer. |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Exercícios Resolvidos de Python - Escreva um programa em Python que usa a função log10() para informar a quantidade de dígitos em um número inteiroQuantidade de visualizações: 655 vezes |
Pergunta/Tarefa: Escreva um algorítmo em Python que peça para o usuário informar um número inteiro de qualquer tamanho, ou seja, qualquer quantidade de dígitos. Em seguida seu código deverá informar a quantidade de dígitos contida no número inteiro digitado pelo usuário. Seu programa deverá, obrigatoriamente, usar a função log10() do módulo Math. Sua saída deverá ser parecida com: Informe um número inteiro de qualquer tamanho: 847 O número informado possui 3 dígitos Veja a resolução comentada deste exercício usando Python: # vamos importar o módulo Math import math # método principal def main(): # vamos pedir para o usuário informar um número inteiro numero = int(input("Informe um número inteiro de qualquer tamanho: ")) # agora vamos obter a quantidade de dígitos no # número informado tamanho = int(math.log10(numero)) + 1 # mostramos o resultado print("O número informado possui {0} dígitos".format(tamanho)) if __name__== "__main__": main() |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
JavaScript - Como remover elementos duplicados de um array em JavaScript usando um Set e o método Array.from() PHP - PHP para iniciantes - Como obter a diferença em horas entre duas datas (e suas respectivas horas) |
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 |