Você está aqui: C# ::: Dicas & Truques ::: Data e Hora |
|
Como calcular a quantidade de dias decorridos em C# usando um objeto TimeSpanQuantidade de visualizações: 8206 vezes |
|
Em algumas ocasiões precisamos saber a quantidade de dias decorridos deste uma determinada data usando a linguagem C#. O trecho de código abaixo mostra como isso pode ser feito. Veja que usamos o construtor da estrutura DateTime para construir a data no passado e então a subtraímos da data atual. Em seguida obtemos a quantidade de dias do TimeSpan resultante:using System; namespace Estudos { class Program { static void Main(string[] args) { // vamos obter a quantidade de dias decorridos entre // 10/06/2009 e a data atual DateTime data_anterior = new DateTime(2009, 6, 10); // 10/06/2009 DateTime hoje = DateTime.Now; // obtém a quantidade de dias decorridos TimeSpan dif = hoje.Subtract(data_anterior); int decorridos = dif.Days; // exibe o resultado System.Console.WriteLine("Dias decorridos desde 10/06/2009: " + decorridos); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Dias decorridos desde 10/06/2009: 4662 |
|
Link para compartilhar na Internet ou com seus amigos: | |
Java ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia do mês em Java usando Calendar.DAY_OF_MONTHQuantidade de visualizações: 11209 vezes |
Nesta dica mostrarei como podemos usar a constante Calendar.DAY_OF_MONTH para retornar o dia do mês para uma determinada data. Para isso nós só precisamos fornecer esta constante para o método get() de uma instância da classe Calendar. Veja o código completo para o exemplo: package estudos; import java.util.Calendar; public class Estudos { public static void main(String args[]) { // vamos obter uma instância da classe Calendar Calendar agora = Calendar.getInstance(); // agora vamos obter o dia do mês como um inteiro int dia_mes = agora.get(Calendar.DAY_OF_MONTH); // e mostramos o resultado System.out.println("O dia do mês é: " + dia_mes); } } Ao executar este código Java nós teremos o seguinte resultado: O dia do mês é: 26 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
POO - Programação Orientada a Objetos - Exercícios Resolvidos de Java - Ex. 2 - A classe Circulo (construtores, métodos, getters e setters e encapsulamento)Quantidade de visualizações: 18780 vezes |
Pergunta/Tarefa: Escreva uma classe Circulo para representar círculos. Esta classe deverá conter os seguintes atributos e métodos: a) Uma variável privada do tipo double chamada raio que guardará o valor do raio atual do circulo. b) Métodos get() e set() públicos que permitem definir e acessar o valor da variável raio. c) Um construtor que recebe o valor do raio como argumento. d) Um método getArea() que calcula e retorna a área do círculo. e) Um método getCircunferencia() que calcula e retorna a circunferência do círculo. f) Um método aumentarRaio() que recebe um valor double e o usa como percentual para aumentar o raio do círculo. Crie uma classe contendo um método main() para testar a funcionalidade da classe Circulo. Eis um exemplo de entrada e saída: Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: Circulo.java: package estudos; public class Circulo{ private double raio; // guarda o raio atual do círculo // construtor que recebe o valor do raio como argumento public Circulo(double raio){ this.raio = raio; } // permite obter o raio do círculo public double getRaio(){ return raio; } // permite definir o raio do círculo public void setRaio(double raio){ this.raio = raio; } // obtém a área do círculo public double getArea(){ double area = Math.PI * Math.pow(this.raio, 2); return area; } // obtém a circunferência do círculo public double getCircunferencia(){ double circunferencia = (2 * Math.PI) * this.raio; return circunferencia; } // permite aumentar o raio de acordo com uma porcentagem fornecida public void aumentarRaio(double porcentagem){ this.raio = this.raio + (porcentagem / 100.0) * this.raio; } } Veja agora o método main() que nos permite testar a funcionalidade da classe Circulo: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // vamos criar uma instância da classe Circulo Scanner entrada = new Scanner(System.in); System.out.print("Informe o raio do círculo: "); double raio = Double.parseDouble(entrada.nextLine()); Circulo c = new Circulo(raio); // vamos mostrar o valor do raio atual System.out.println("Raio: " + c.getRaio()); // vamos mostrar a área System.out.println("Área: " + c.getArea() + " metros quadrados"); // vamos mostrar a circunferência System.out.println("Circunferência: " + c.getCircunferencia() + " metros"); // vamos aumentar o raio do circulo em uma determinada porcentagem System.out.print("\nInforme o percentual de aumento do raio: "); double percentual = Double.parseDouble(entrada.nextLine()); c.aumentarRaio(percentual); // vamos mostrar o valor do raio atual System.out.println("Raio: " + c.getRaio()); // vamos mostrar a área System.out.println("Área: " + c.getArea() + " metros quadrados"); // vamos mostrar a circunferência System.out.println("Circunferência: " + c.getCircunferencia() + " metros"); } } |
Python ::: Dicas & Truques ::: Lista (List) |
Como contar quantas vezes um elemento aparece em uma lista do Python usando a função count()Quantidade de visualizações: 7880 vezes |
Em várias situações nós precisamos contar as ocorrências de um item em uma List do Python, ou seja, queremos saber quantas vezes um determinado elemento aparece na lista. Para isso nós podemos usar a função count() do objeto List. Veja um código Python completo demonstrando seu uso: # função principal do programa def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 2, 17] # vamos mostrar o conteúdo dessa lista print("Conteúdo da lista: {0}".format(valores)) # verifica a quantidade de vezes que o # valor 2 aparece print("O valor 2 aparece", valores.count(2), "vezes") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Conteúdo da lista: [2, 5, 12, 2, 3, 2, 17] O valor 2 aparece 3 vezes |
Java ::: Pacote java.lang ::: StringBuffer |
Curso completo de Java - Como usar a classe StringBuffer da linguagem JavaQuantidade de visualizações: 8673 vezes |
A classe StringBuffer, no pacote java.lang, representa uma sequencia de caracteres mutável e segura em relação a threads. Um objeto StringBuffer é parecido com uma String, com a diferença que um StringBuffer pode ser modificado in-place, ou seja, modificações em seu conteúdo não geram uma nova cópia, como acontece com objetos da classe String. Veja a posição desta classe na hierarquia de classes Java: java.lang.Object java.lang.StringBuffer A qualquer momento um StringBuffer contém uma sequencia de caracteres em particular, mas o tamanho e o conteúdo da sequencia pode ser alterado por meio de certas chamadas de métodos. Objetos StringBuffer são seguros para acesso em um ambiente de múltiplas threads. Os métodos são sincronizados (synchronized) onde necessário de forma a garantir que todas as operações em uma instância em particular se comportem como se estivessem em ordem serial, ou seja, sejam consistentes com a ordem das chamadas de métodos feitas por cada uma das threads envolvidas. As operações principais de um StringBuffer são os métodos append() e insert(), que são sobrecarregados para aceitar dados de qualquer tipo. Cada um destes métodos converte a informação fornecida em string e então acrescenta ou insere os caracteres desta string no string buffer. O método append() sempre adiciona os caracteres no final do buffer. O método insert(), por sua vez, adiciona os caracteres em um determinado ponto. Por exemplo, se z se refere a um objeto string buffer cujo conteúdo é "start", então a chamada de método z.append("le") faria com que o string buffer tivesse agora ""startle"", enquanto z.insert(4, "le") alteraria o conteúdo do string buffer para "starlet". Em geral, se sb se refere a uma instância de StringBuffer, então sb.append(x) tem o mesmo efeito que sb.insert(sb.length(), x). Sempre que uma operação ocorre envolvendo uma sequencia de fonte (por exemplo, adicionar ou inserir a partir de uma outra sequencia), esta classe sincroniza somente o string buffer no qual a operação está sendo feita. Todo string buffer possui uma capacidade (capacity). Enquanto o comprimento da sequencia de caracteres contida no string buffer não exceder a capacidade do mesmo, não há necessidade de alocar uma nova matriz interna de buffer. Se o buffer interno for sobrecarregado, ele será automaticamente expandido. A partir do Java 5, esta classe foi suplementada com uma classe equivalente criada para o uso em ambiente de thread única: StringBuilder. A classe StringBuilder deve ser usada em vez de StringBuffer, uma vez que ela suporta as mesmas operações mas é mais rápida por não executar sincronização. |
Angular ::: Dicas & Truques ::: Componentes Angular |
Angular para iniciantes - Como criar o seu primeiro componente Angular usando o Angular CLI - Comando ng generate componentQuantidade de visualizações: 2287 vezes |
Aplicações Angular são construidas em cima de componentes, e estes consistem de: a) Um template HTML que declara o que deve ser renderizado na página. b) Uma classe TypeScript que define o comportamento do componente. c) Um seletor CSS que define com o componente será usado em um template. d) Estilos CSS opcionais aplicados ao template. Todos esses aspectos acima são abordados em mais dicas dessa seção. O importante agora é entendermos como criar o componente e exibí-lo no navegador. Assim, se você ainda não o fez, crie uma nova aplicação Angular usando o Angular CLI. Você pode usar um comando parecido com: c:\estudos_angular>ng new estudos Este comando vai criar uma nova aplicação Angular com o nome estudos dentro da pasta "c:\estudos_angular". Aguarde alguns minutos e verá que o Angular CLI já criou toda a estrutura da aplicação. Para executá-la, dispare os comandos abaixo: c:\estudos_angular>cd estudos c:\estudos_angular\estudos>ng serve --open Quando a aplicação subir, veremos o seguinte resultado: Você obteve um resultado parecido? Então vamos continuar. Vá até o diretório "C:\estudos_angular\estudos\src\app" e você verá que o Angular CLI já criou para nós um componente com o nome AppComponent por meio dos arquivos app.component.css, app.component.html, app.component.spec.ts e app.component.ts. Agora vamos voltar nossa atenção para o arquivo app.module.ts. Abra ele no seu editor de texto favorito e você verá o seguinte código: import {NgModule} from '@angular/core'; import {BrowserModule} from '@angular/platform-browser'; import {AppComponent} from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } Por ora não vamos analisar todo o conteúdo deste arquivo, apenas fique atento ao que vai acontecer com ele depois que criarmos nosso novo componente, o que faremos agora. Abra uma nova janela de terminal, navegue até o diretório raiz da aplicação e dispare o seguinte comando: c:\angular>cd estudos c:\angular\estudos>ng generate component noticia Nesse momento o Angular CLI criou uma pasta noticia com os seguintes arquivos: noticia.component.css noticia.component.html noticia.component.spec.ts noticia.component.ts Agora volte até o arquivo app.module.ts e veja que o Angular CLI o modificou, adicionando o novo componente NoticiaComponent. É importante entender bem o que acontece com este arquivo, pois é ele que indica qual componente será iniciado em primeiro lugar junto com a aplicação Angular. Agora abra o arquivo noticia.component.ts e altere o seu conteúdo para a versão abaixo: import { Component } from '@angular/core'; @Component({ selector: 'app-noticia', templateUrl: './noticia.component.html', styleUrls: ['./noticia.component.css'] }) export class NoticiaComponent{ titulo = `Presidente afirma que o preço da gasolina não sobe mais.`; } Agora vá em noticia.component.html e altere-o para o código abaixo: <div> <h2>Sou o componente Noticia</h2> <h3>{{ titulo }}</h3> </div> Nosso componente está pronto. Vamos fazer uns ajustes no componente que o Angular CLI criou para nós automaticamente. Abra o arquivo app.component.ts e altere o seu conteúdo para: import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { nome = 'AppComponent'; } Agora vá até o arquivo app.component.html e modifique-o para o código abaixo: <div> <h1>Sou o componente que o Angular CLI criou</h1> <h2>Meu nome é: {{ nome }}</h2> </div> <app-noticia></app-noticia> Veja que coloquei o componente <app-noticia></app-noticia> dentro do componente principal. Agora, se você reiniciar a aplicação (é provável que as mudanças já estejam aparecendo no seu navegador) você verá o resultado abaixo: Obteve resultado parecido? Que maravilha! Agora, para terminar esta dica, abra o arquivo noticia.component.css e vamos adicionar os estilos CSS abaixo: h2 {color: red} div {border: 1px solid green; padding: 10px} Veja a aplicação novamente e note como o componente Noticia já contém uma formatação diferente. Agora é só criar vários componentes, agrupá-los, aplicar formatações CSS, imagens, etc, e contruir uma aplicação realmente interessante. |
Veja mais Dicas e truques de Angular |
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 |