Você está aqui: Cards de AutoCAD Civil 3D |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como inverter uma string em Java usando o método reverse() da classe StringBufferQuantidade de visualizações: 2 vezes |
|
Nesta dica mostrarei como podemos usar o método reverse() da classe StringBuffer ou StringBuilder para inverter a ordem dos caracteres de uma palavra, frase ou texto em Java. Note como convertemos uma String em um StringBuffer, fazemos a inversão da frase e depois convertemos novamente o StringBuffer em um objeto String. Veja o código completo para o exemplo:
package estudos;
public class Estudos {
public static void main(String[] args){
// vamos criar uma string
String frase = "JAVA É BOM DEMAIS";
// vamos mostrar a frase original
System.out.println("String original: " + frase);
// agora vamos criar um objeto StringBuffer
StringBuffer temp = new StringBuffer(frase);
// vamos inverter a string agora
temp.reverse();
// e agora mostramos o resultado
frase = temp.toString();
System.out.println("String invertida: " + frase);
}
}
Ao executar este código Java nós teremos o seguinte resultado: String original: JAVA É BOM DEMAIS String invertida: SIAMED MOB É AVAJ |
MySQL ::: Dicas & Truques ::: Joins (Junções) |
Como agrupar dados de duas ou mais tabelas no MySQL usando LEFT JOIN (ou LEFT OUTER JOIN)Quantidade de visualizações: 14857 vezes |
|
A junção LEFT JOIN (ou LEFT OUTER JOIN) do MySQL é usada quando queremos agrupar dados de duas ou mais tabelas e exibir todos os registros da tabela à esquerda, mesmo que não haja correspondências (match) de registros na tabela à direita. Vamos ver um exemplo? Considere duas tabelas: jogadores e times. Um jogador pode jogar em nenhum (zero) ou um time e um time pode conter zero ou mais jogadores. Aqui a cardinalidade é de 1 x N. Comece criando a tabela de times: Comando DDL CREATE TABLE para a tabela times: CREATE TABLE times( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome VARCHAR(45) NOT NULL, PRIMARY KEY(id) ) ENGINE = InnoDB; Vá em frente e insira alguns times nesta tabela. Vamos agora criar a tabela de jogadores: Comando DDL CREATE TABLE para a tabela jogadores:
CREATE TABLE jogadores(
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nome VARCHAR(45) NOT NULL,
id_time INTEGER UNSIGNED,
PRIMARY KEY(id),
CONSTRAINT fk_jogadores_times FOREIGN KEY fk_jogadores_times(id_time)
REFERENCES times(id) ON DELETE RESTRICT ON UPDATE RESTRICT
)
ENGINE = InnoDB;
Note que o campo id_time da tabela jogador aceita NULL, ou seja, como é possível haver jogadores sem times, devemos ser capazes de cadastrar os jogadores e só mais adiante definir o time a qual ele pertencerá. Veja: INSERT INTO jogadores VALUES(NULL, 'JORGINHO', NULL); Vá em frente e cadastre alguns jogadores (sem relacioná-los com algum time). Finalizado alguns cadastros de jogadores e times, use a instrução UPDATE para relacionar alguns jogadores com seus respectivos times (deixe alguns jogadores sem time). Veja um exemplo: UPDATE jogadores SET id_time = 3 WHERE id = 2; E aqui já podemos ver um exemplo da junção LEFT JOIN. Nossa tarefa é listar o id, nome do jogador e nome do time a qual ele pertence. Mas, queremos também incluir na listagem os jogadores que ainda não possuem times (o valor do campo id_time ainda é NULL). Veja: SELECT j.id, j.nome, t.nome FROM jogadores j LEFT JOIN times t ON j.id_time = t.id; id jogador time 1 ROBERTO CARLOS ? 2 JORGINHO CRUZEIRO 3 GUSTAVO BORGES ? 4 MARCOS ? Note que o conjunto de dados retornados inclui todos os jogadores, incluindo aqueles para os quais nenhum time foi definido ainda. |
C# ::: Dicas & Truques ::: Tipos de Dados |
C# para iniciantes - Como usar o tipo de dados char da linguagem C#Quantidade de visualizações: 16074 vezes |
|
O tipo de dados char é usado quando queremos declarar, definir e usar caracteres em nossos programas. Em C#, uma variável do tipo char armazena um caractere Unicode, que são caracteres de 16 bits usados para representar a maioria das linguagens escritas mais conhecidas no mundo. O tipo char é um apelido C# para o tipo System.Char da plataforma .NET e sua faixa de valores varia de U+0000 à U+ffff (de 0 à 65535). Variáveis do tipo char podem ser declaradas e receber valores literais de três formas. Veja: // define uma letra char letra = 'A'; // define um valor hexadecimal equivalente à letra "A" char letra2 = '\x0041'; // define um valor Unicode equivalente à letra "A" char letra3 = '\u0041'; Há ainda a possibilidade de efetuar um cast de um valor inteiro para o tipo char. Veja:
// converte o valor 65 para um char
char letra = (char)65;
// exibe o resultado
Console.WriteLine("A letra é: " + letra);
Quando se trata de conversões implícitas, o tipo char pode ser convertido implicitamente para os tipos ushort, int, uint, long, ulong, float, double e decimal. Contudo, o caminho contrário não é possível, ou seja, nenhum outro tipo de dados pode ser convertido para o tipo char sem a necessidade de um cast (conversão explícita). Para finalizar, veja um trecho de código que exibe o alfabeto completo em letras maiúsculas:
static void Main(string[] args){
for(int i = 65; i <= 90; i++){
char letra = (char)i;
Console.Write(letra + " ");
}
// pausa o programa
Console.ReadKey();
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Ler a idade e o peso de 10 pessoas e mostrar a quantidade de pessoas com mais de 80 quilos e a média das idadesQuantidade de visualizações: 2333 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que receba a idade (como int) e o peso (como double) de 10 pessoas. Em seguida calcule e mostre: 1) A quantidade de pessoas com mais de 80 quilos; 2) A média das idades das pessoas. Sua saída deve ser parecida com: Informe a idade da 1.a pessoa: 95 Informe o peso da 1.a pessoa: 83 Informe a idade da 2.a pessoa: 45 Informe o peso da 2.a pessoa: 115 Informe a idade da 3.a pessoa: 83 Informe o peso da 3.a pessoa: 76 Informe a idade da 4.a pessoa: 19 Informe o peso da 4.a pessoa: 79 Informe a idade da 5.a pessoa: 40 Informe o peso da 5.a pessoa: 93 Quantidade de pessoas com mais de 80 quilos: 3 Média das idades das pessoas: 56.4 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) {
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
int quant_acima_80_kg = 0; // quantidade de pessoas acima de 80 quilos
int soma_idades = 0; // soma das idades para depois obter a média
// vamos ler os dados das 5 pessoas
for(int i = 0; i < 5; i++){
System.out.print("Informe a idade da " + (i + 1) + ".a pessoa: ");
int idade = Integer.parseInt(entrada.nextLine());
System.out.print("Informe o peso da " + (i + 1) + ".a pessoa: ");
double peso = Double.parseDouble(entrada.nextLine());
// vamos somar mais esta idade
soma_idades = soma_idades + idade;
// esta pessoa possui mais de 80 quilos?
if(peso > 80){
// aumenta o contador de pessoas acima de 80 quilos
quant_acima_80_kg++;
}
// adiciona uma quebra de linha
System.out.println();
}
// e agora mostramos o resultado
System.out.println("Quantidade de pessoas com mais de 80 quilos: " +
quant_acima_80_kg);
System.out.println("Média das idades das pessoas: " + (soma_idades / 5.0));
}
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Ordenação e Pesquisa (Busca) |
Exercícios Resolvidos de Java - Como usar a Ordenação da Bolha em Java para ordenar os valores de um vetor em ordem crescente ou decrescenteQuantidade de visualizações: 3860 vezes |
|
Pergunta/Tarefa: A Ordenação da Bolha, ou ordenação por flutuação (literalmente "por bolha"), também chamada de Bubble Sort, é um algoritmo de ordenação dos mais simples. A ideia é percorrer o array diversas vezes, a cada passagem fazendo flutuar para o topo o maior elemento da sequência. Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo. No melhor caso, o algoritmo executa n operações relevantes, onde n representa o número de elementos do vetor. No pior caso, são feitas n2 operações. A complexidade desse algoritmo é de ordem quadrática. Por isso, ele não é recomendado para programas que precisem de velocidade e operem com quantidade elevada de dados. Escreva um programa Java que declara, constrói um vetor de 10 inteiros e peça para o usuário informar os valores de seus elementos. Em seguida use a ordenação da bolha para ordenar os elementos em ordem crescente. Sua saída deverá ser parecida com: Informe o valor para o índice 0: 84 Informe o valor para o índice 1: 23 Informe o valor para o índice 2: 9 Informe o valor para o índice 3: 5 Informe o valor para o índice 4: 11 Informe o valor para o índice 5: 3 Informe o valor para o índice 6: 50 Informe o valor para o índice 7: 7 Informe o valor para o índice 8: 2 Informe o valor para o índice 9: 73 O array informado foi: 84 23 9 5 11 3 50 7 2 73 O array ordenado é: 2 3 5 7 9 11 23 50 73 84 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) {
// vamos declarar e construir um vetor de 10 elementos
int valores[] = new int[10];
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir que o usuário informe os valores
for(int i = 0; i < valores.length; i++){
System.out.print("Informe o valor para o índice " + i + ": ");
valores[i] = Integer.parseInt(entrada.nextLine());
}
// vamos mostrar o vetor informado
System.out.println("\nO array informado foi:\n");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
// vamos ordenar os elementos do vetor usando a ordenação da bolha
// laço externo de trás para frente
for(int i = valores.length - 1; i > 1; i--){
for(int j = 0; j < i; j++){ // laço interno vai no fluxo normal
if(valores[j] > valores[j + 1]){ // temos que trocá-los de lugar
int temp = valores[j];
valores[j] = valores[j + 1];
valores[j + 1] = temp;
}
}
}
// vamos exibir o vetor já ordenado
System.out.println("\n\nO array ordenado é:\n");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
System.out.println("\n");
}
}
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






