Java ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se duas strings são iguais em Java sem considerar letras maiúsculas e minúsculas usando o método equalsIgnoreCase()Quantidade de visualizações: 290 vezes |
Nesta dica mostrarei como podemos usar o método equalsIgnoreCase() da classe String da linguagem Java para verificar se duas palavras, frases ou textos são iguais desconsiderando letras maiúsculas e minúsculas. Veja o código completo para o exemplo: package estudos; public class Estudos{ public static void main(String[] args){ String s1 = "GOSTO de Java"; String s2 = "gosto de java"; System.out.println("A primeira string é: " + s1); System.out.println("A segunda string é: " + s2); if(s1.equalsIgnoreCase(s2)){ System.out.println("As duas strings sao iguais"); } else{ System.out.println("As duas strings não sao iguais"); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: A primeira string é: GOSTO de Java A segunda string é: gosto de java As duas strings são iguais |
Java ::: Dicas & Truques ::: Formulários e Janelas |
Como definir a cor de fundo para a janela JFrame de sua aplicação Java SwingQuantidade de visualizações: 15978 vezes |
Nesta dica mostrarei como é possível definir a cor de fundo para uma janela JFrame. O truque aqui é obter o painel de conteúdo da JFrame usando o método getContentPane() e, em seguida, usar o método setBackground() da classe Container fornecendo a cor desejada. Veja o código completo para o exemplo: package arquivodecodigos; import java.awt.*; import javax.swing.*; public class Estudos extends JFrame{ public Estudos() { super("A classe JFrame"); Container c = getContentPane(); c.setLayout(new FlowLayout(FlowLayout.LEFT)); // Define a cor de fundo c.setBackground(Color.CYAN); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Java ::: Classes e Componentes ::: JMenuBar, JMenu, JMenuItem e Afins |
Java Swing - Como criar e adicionar uma barra de menus à uma janela JFrameQuantidade de visualizações: 18518 vezes |
Nesta dica eu mostro como adicionar uma barra de menus à uma janela JFrame do Java Swing. Observe que a barra de menus contém apenas um menu que, por sua vez, contém apenas um ítem de menu. Construí este exemplo "na mão" mesmo, ou seja, não usei nenhum editor visual tal como aquele encontrado na IDE Netbeans. Esta abordagem é muito útil para entender todas as partes que forma uma aplicação Java Swing. Veja o código completo para o exemplo: import javax.swing.*; public class Estudos extends JFrame{ public Estudos(){ super("Menus"); // Cria a barra de menus JMenuBar barra = new JMenuBar(); setJMenuBar(barra); // Cria um menu JMenu arquivo = new JMenu("Arquivo"); // Cria um item de menu e o adiciona no menu JMenuItem fechar = new JMenuItem("Fechar"); arquivo.add(fechar); // Adiciona o menu à barra de menus barra.add(arquivo); setSize(300, 150); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Ruby ::: Dicas & Truques ::: Data e Hora |
Datas e horas em Ruby: Time, Date ou DateTime - Qual classe devo usar?Quantidade de visualizações: 8655 vezes |
A linguagem Ruby oferece três classes básicas para lidar com datas e horas: Time, Date e DateTime. Para ajudá-lo em seus estudos, veja uma descrição breve de cada uma: 1) A classe Time está mais para um encapsulamento das funções de datas e horas da biblioteca C. Estas bibliotecas são geralmente baseadas na época UNIX (UNIX epoch) e, assim, não conseguem representar datas e horas antes de 1970. 2) A classe Date foi criada para superar estas deficiências da classe Time. Com esta classe nós podemos lidar com datas realmente antigas, tais como o aniversário de Leonardo da Vinci (15 de abril de 1452) e, esta classe funciona muito bem com a reforma do calendário. No entanto, a classe Date não permite lidar com horas, ou seja, ao usá-la não seremos capazes de representar a hora que Leonardo da Vinci nasceu. Apenas a data de nascimento. 3) A classe DateTime herda da Date e tenta ser o melhor de ambos os mundos. Com esta classe podemos representar datas da mesma forma que Date e horas da mesma forma que Time. Geralmente os desenvolvedores optam por esta classe, por considerá-la a forma mais correta de representar datas e horas. |
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Exercício Resolvido de C++ - Escreva um programa que solicite dois números do tipo inteiro distintos ao usuário e que apresente na tela o maior delesQuantidade de visualizações: 616 vezes |
Pergunta/Tarefa: Escreva um programa que solicite dois números do tipo inteiro distintos ao usuário e que apresente na tela o maior deles. Esse programa deve possuir uma função para verificar qual é o maior número. Atenção: seu código deverá assegurar que os dois números informados pelo usuário sejam diferentes. Exiba uma mensagem na tela caso isso acontecer. Sua saída deverá ser parecida com: Informe o primeiro número inteiro: 6 Informe o segundo número inteiro: 3 O maior número é: 6 Veja a resolução comentada deste exercício em C++: #include <string> #include <iostream> using namespace std; // protótipo da função que receberá dois números inteiros // e retornará o maior deles int maior_numero(int num1, int num2); int main(int argc, char *argv[]){ // variáveis usadas na resolução do problema int num1, num2, maior; // vamos pedir para o usuário informar os dois números cout << "Informe o primeiro número inteiro: "; cin >> num1; cout << "Informe o segundo número inteiro: "; cin >> num2; // os números são iguais? if(num1 == num2){ cout << "Erro. Os dois números são iguais.\n" << endl; } else{ // vamos chamar a função para obter o número maior maior = maior_numero(num1, num2); cout << "O maior número é: " << maior << "\n" << endl; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } // função que receberá dois números inteiros e retornará // o maior deles int maior_numero(int num1, int num2){ // o primeiro número é maior que o segundo? if(num1 > num2){ return num1; } else{ return num2; } } |
MySQL ::: Dicas & Truques ::: Data e Hora |
Como adicionar horas ao valor de um campo DATETIME ou TIME usando a função ADDTIME() do MySQLQuantidade de visualizações: 13453 vezes |
A função ADDTIME() é usada quando queremos adicionar horas, minutos, segundos ou milisegundos ao valor de um campo DATETIME ou TIME. Suponhamos que você tenha um campo DATETIME chamado data_hora_compra com o valor 2008-03-30 02:30:15. Veja como adicionar 3 horas ao valor deste campo:SELECT ADDTIME(data_hora_compra, '3:00:00') FROM tabela_estudos O valor retornado será 2008-03-30 05:30:15. Veja agora a função aplicada a um campo TIME com o nome de hora_inicio e o valor 02:30:15. Agora vamos adicionar 20 minutos: SELECT ADDTIME(hora_inicio, '00:20:00') FROM tabela_estudos O valor retornado será 02:50:15. É possível ainda usar a função ADDTIME() para adicionar dias ao valor de um campo DATETIME. Por exemplo, se o valor do campo for 2008-03-30 02:30:15 e usarmos a query abaixo: SELECT ADDTIME(data_hora_compra, '5 00:00:00') FROM tabela_estudos O resultado será 2008-04-04 02:30:15. |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Python - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 2228 vezes |
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Python que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Python: # método principal def main(): # vamos ler o primeiro lado do triângulo lado_a = int(input("Informe o primeiro lado do triângulo: ")) # vamos ler o segundo lado do triângulo lado_b = int(input("Informe o segundo lado do triângulo: ")) # vamos ler o terceiro lado do triângulo lado_c = int(input("Informe o terceiro lado do triângulo: ")) # os lados informados formam um triângulo? if((lado_a < (lado_b + lado_c)) and (lado_b < (lado_a + lado_c)) and (lado_c < (lado_a + lado_b))): # é um triângulo equilátero (todos os lados iguais)? if((lado_a == lado_b) and (lado_b == lado_c)): print("O triângulo é equilátero") else: # é isósceles (dois lados iguais e um diferente)? if((lado_a == lado_b) or (lado_a == lado_c) or (lado_c == lado_b)): print("O triângulo é isósceles") else: # é escaleno print("O triângulo é escaleno") else: print("Os lados informados não formam um triângulo.") if __name__== "__main__": main() |
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar o índice da primeira ocorrência de um elemento em um array do JavaScript usando a função indexOf()Quantidade de visualizações: 2529 vezes |
Em algumas ocasiões nós precisamos obter e retornar o índice da primeira ocorrência de um determinado elemento em um array JavaScript. Para isso podemos usar a funções indexOf(). Se o elemento não puder ser encontrado, o valor -1 é retornado. Veja um exemplo de seu uso: <script type="text/javascript"> var valores = new Array(1, 2, 3, 2, 2, 4, 5); // vamos obter o índice da primeira ocorrência // do elemento com o valor 2 var indice = valores.indexOf(2); window.alert("Elemento encontrado no índice: " + indice); </script> Execute o código e veja que o elemento foi encontrado no índice 1, ou seja, na segunda posição do array, já que os índices de vetor e matriz em JavaScript começam a partir de 0. Experimente pesquisar o valor 50 e verá que o valor retornado é -1, indicando que o elemento não foi encontrado. |
Revit C# ::: Dicas & Truques ::: Selection, Seleção |
Como pedir para o usuário selecionar vários elementos no Revit usando a função PickObjects() do objeto Selection da Revit C# APIQuantidade de visualizações: 450 vezes |
Nesta dica mostrarei como podemos usar a função PickObjects() do objeto Selection da Revit C# API para pedir ao usuário que selecione vários elementos na área de desenho do Revit e então efetuar alguma operação envolvendo todos eles, de uma só vez. Veja que o objeto Selection é retornado a partir de um UIDocument, que é obtido a partir de uma chamada this.ActiveUIDocument. Então nós chamamos a função PickObjects(), fornecendo o parâmetro ObjectType.Element e guardamos as referências retornadas como um objeto IList. O passo seguinte é acessar a propriedade Count da IList para mostrar a quantidade de objetos selecionados. Note que é preciso clicar o botão Concluir (fica entre o botão Cancelar e a caixa de seleção Múltiplo) para indicar que o usuário concluiu a seleção e nosso código poder prosseguir. Veja o código Revit C# completo para o exemplo: using System; using Autodesk.Revit.UI; using Autodesk.Revit.DB; using Autodesk.Revit.UI.Selection; using System.Collections.Generic; using System.Linq; namespace Estudos { [Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes. TransactionMode.Manual)] [Autodesk.Revit.DB.Macros.AddInId("ED8EC6C4-9489-48F7-B04E-B45B5D1BEB12")] public partial class ThisApplication { private void Module_Startup(object sender, EventArgs e) { // vamos obter uma referência ao UIDocument ativo UIDocument uidoc = this.ActiveUIDocument; // agora mostramos uma mensagem para o usuário selecionar um // elemento TaskDialog.Show("Aviso", "Selecione um ou mais elementos"); // obtemos uma referência ao objeto Selection do // UIDocument ativo Selection selecao = uidoc.Selection; // e finalmente esperamos que o usuário selecione um ou // mais elementos e os guardamos em uma lista IList<Reference> selecionados = selecao.PickObjects(ObjectType.Element); // agora mostramos a quantidade de elementos selecionados TaskDialog.Show("Aviso", "Você selecionou " + selecionados.Count + " elementos."); } private void Module_Shutdown(object sender, EventArgs e) { // para fazer alguma limpeza de memória ou algo assim } #region Revit Macros generated code private void InternalStartup() { this.Startup += new System.EventHandler(Module_Startup); this.Shutdown += new System.EventHandler(Module_Shutdown); } #endregion } } Execute a macro, selecione um ou mais elementos, clique o botão Concluir e você verá uma janela TaskDialog com a seguinte mensagem: Você selecionou 5 elementos. |
JavaScript ::: URLs e Parâmetros de URLs ::: URLSearchParams |
Como obter a quantidade de parâmetros em um objeto URLSearchParams do JavaScriptQuantidade de visualizações: 1055 vezes |
Em algumas situações nós precisamos saber quantos parâmetros de URL foram informados em um objeto URLSearchParams. Para isso nós só precisamos converter o Map representado por URLSearchParams em um array bidimensional usando Array.from(). A partir daí é só chamar a propriedade length do array. Veja o código completo para o exemplo: <!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Acessando parâmetros de URL</title> </head> <body> <script type="text/javascript"> // vamos obter a URL atual e seus parâmetros GET var parametros = new URLSearchParams(window.location.search); window.alert("Quantidade de parâmetros: " + Array.from(parametros).length); </script> </body> </html> Ao executar este exemplo JavaScript com a URL: http://localhost/estudos/index.php?nome=Osmar&idade=39 nós teremos uma mensagem window.alert() com o seguinte texto: Quantidade de parâmetros: 2 |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
Portugol - Como calcular o coeficiente angular de uma reta em Portugol dados dois pontos no plano cartesiano |
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 |