Java ::: Dicas & Truques ::: Data e Hora |
Como validar uma data em Java usando a classe GregorianCalendarQuantidade de visualizações: 13592 vezes |
Esta dica mostra a você como validar uma data em Java usando a classe GregorianCalendar. Veja que estamos usando o método set() para atribuir valores aos campos ano, mês e dia. Contudo, o valor para o dia está incorreto. Desta forma, ao chamarmos o método getTime() uma exceção do tipo IllegalArgumentException será lançada. Veja o código:
import java.util.*;
public class Estudos{
public static void main(String args[]){
try{
GregorianCalendar data = new GregorianCalendar();
data.setLenient(false);
data.set(GregorianCalendar.YEAR, 2008); // ano
data.set(GregorianCalendar.MONTH, 11); // mês
// dia inválido
data.set(GregorianCalendar.DATE, 32);
// a validação da data ocorre aqui
Date temp = data.getTime();
}
catch(Exception e){
System.out.println("Data inválida.");
e.printStackTrace();
}
}
}
Ao executarmos este código teremos o seguinte resultado: Data inválida. java.lang.IllegalArgumentException: DAY_OF_MONTH at java.util.GregorianCalendar.computeTime(Unknown Source) at java.util.Calendar.updateTime(Unknown Source) at java.util.Calendar.getTimeInMillis(Unknown Source) at java.util.Calendar.getTime(Unknown Source) at Estudos.main(Estudos.java:14) |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Manipulação de texto em Java - Como contar as ocorrências de um caractere em uma stringQuantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como podemos combinar um laço for e o método charAt() da classe String para contar as ocorrências de um caractere (uma letra) em uma palavra, frase ou texto. Veja o código completo para o exemplo:
package arquivodecodigos;
public class Estudos{
public static void main(String[] args){
String frase = "Programar em Java é muito bom";
System.out.println("Frase: " + frase);
int cont = 0;
char letra = 'a'; // ocorrências da letra "a"
for(int i = 0; i < frase.length(); i++){
if(frase.charAt(i) == letra){
cont++;
}
}
System.out.println("A frase contem " +
cont + " ocorrencias da letra \"" + letra + "\"");
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Frase: Programar em Java é muito bom A frase contém 4 ocorrências da letra "a" |
PHP ::: PHP para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em PHPQuantidade de visualizações: 2812 vezes |
|
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando PHP. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código PHP. Veja um trecho de código PHP completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior:
<?php
// vamos declarar e construir uma matriz de três linhas
// e três colunas
$matriz = array(
array(3, 7, 9),
array(2, 4, 1),
array(5, 6, 8)
);
// guarda a soma dos elementos na diagonal principal
$soma_diagonal = 0;
// vamos mostrar a matriz da forma que ela
// foi informada
echo "<br>";
// percorre as linhas
for($i = 0; $i < count($matriz); $i++){
// percorre as colunas
for($j = 0; $j < count($matriz[0]); $j++){
echo $matriz[$i][$j] . " ";
}
// passa para a próxima linha da matriz
echo "<br>";
}
// vamos calcular a soma dos elementos da diagonal
// principal
for($i = 0; $i < count($matriz); $i++){
for($j = 0; $j < count($matriz[0]); $j++){
if($i == $j){
$soma_diagonal = $soma_diagonal + $matriz[$i][$j];
}
}
}
// finalmente mostramos a soma da diagonal principal
echo "<br>A soma dos elementos da diagonal principal é: "
. $soma_diagonal;
?>
Ao executar este código PHP nós teremos o seguinte resultado: 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
Java ::: Coleções (Collections) ::: Set (Conjunto) |
Como usar objetos da interface Set do Java para representar a interseção (ou intersecção) de dois ou mais conjuntosQuantidade de visualizações: 5065 vezes |
|
Na teoria dos conjuntos, a interseção (português brasileiro) ou intersecção (português europeu) de dois ou mais conjuntos é o conjunto dos elementos que, simultaneamente, pertencem a dois ou mais destes conjuntos. Assim, seja A = {2, 5, 8, 19, 30} e B = {2, 3, 1, 30}. A interseção desses dois conjuntos é C = {2, 30}. Na programação Java podemos representar a interseção de dois conjuntos usando objetos da interface Set e qualquer uma de suas implementações. Para este exemplo vou usar a classe TreeSet, que permite a ordenação dos elementos. Veja o código:
package estudos;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;
public class Estudos{
public static void main(String[] args) {
// primeiro conjunto
Set<Integer> conjuntoA = new TreeSet<>();
conjuntoA.add(2);
conjuntoA.add(5);
conjuntoA.add(8);
conjuntoA.add(19);
conjuntoA.add(30);
// segundo conjunto
Set<Integer> conjuntoB = new TreeSet<>();
conjuntoB.add(2);
conjuntoB.add(3);
conjuntoB.add(1);
conjuntoB.add(30);
// vamos obter a interseção dos dois conjuntos
Set<Integer> conjuntoC = intersecao(conjuntoA, conjuntoB);
// vamos exibir os elementos no conjunto C
Iterator iterator = conjuntoC.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
}
// método genérico que permite obter a interseção de dois conjuntos
public static <T> Set<T> intersecao(Set<T> conjA, Set<T> conjB){
Set<T> conjC = new TreeSet<>();
// percorremos todos os elementos do conjunto A
for(T elemento: conjA){
// e verificamos se o elemento está contido no conjunto B
if(conjB.contains(elemento)){
conjC.add(elemento); // se estiver contido nós o adicionamos no conjunto C
}
}
return conjC; // e retornamos o conjunto C
}
}
Ao executarmos este código teremos o seguinte resultado: 2 30 |
Nossas 20 dicas & truques de programação mais populares |
|
CSS - Como definir uma imagem de fundo para a página HTML em CSS usando a propriedade background-image JavaScript - Como adicionar zeros (ou outro caractere) no início de uma string usando o método padStart() da linguagem JavaScript Laravel - Como criar um CRUD completo em Laravel 8 - CRUD em Laravel usando PHP e MySQL (MariaDB) - Parte 2 |
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 |







