Boa noite a todos
1 - Gostaria de saber em que posição na ordem crescente por tamanho de dado, fica o tipo de dados “char”?
2 - Desenvolvendo um pequeno algoritmo, noto que ao somar dois char’s ou mais o resultado é um número, isso tem a ver com o chamado “par substituto” ?
Segue um exemplo:
public class C{
public static void main(String []args){
char a = 'A';
char b = 'B';
char c = 'C';
System.out.println(a + b + c);
}
Neste caso o resultado é : 198
3 - Na sequência de escape “\u” sei que posso usar uma seqüência em hexadecimal para referenciar caracteres quaisquer, qual seria a aplicação mais coerente para tal função?
Bom dia,
Gostaria de saber em que posição na ordem crescente por tamanho de dado, fica o tipo de dados “char”?
O tipo char equivale é um dado que equivale a um inteiro de 16 bits e armazena dados no padrão UNICODE.
O caractere ‘a’ equivale ao inteiro 97 e ‘z’ equivale ao inteiro 122 logo a sequência de ‘a’-‘z’ vai de 97 à 122;
O caractere ‘A’ equivale ao inteiro 65 e ‘Z’ equivale ao inteiro 90 logo a sequência de ‘A’-‘Z’ vai de 65 à 90;
Para descobrir o restante é só brincar.
Desenvolvendo um pequeno algoritmo, noto que ao somar dois char’s ou mais o resultado é um número, isso tem a ver com o chamado “par substituto” ?
Como eu já falei um char é uma variável que pode armazenar inteiros de 16bits;
Tente mudar seu código para:
public static void main(String[] args) {
char a = 'A';
char b = 'B';
char c = 'C';
System.out.println((char)(a + b + c));
}
[quote=Evandro1979]Bom dia,
Gostaria de saber em que posição na ordem crescente por tamanho de dado, fica o tipo de dados “char”?
O tipo char equivale é um dado que equivale a um inteiro de 16 bits e armazena dados no padrão UNICODE.
O caractere ‘a’ equivale ao inteiro 97 e ‘z’ equivale ao inteiro 122 logo a sequência de ‘a’-‘z’ vai de 97 à 122;
O caractere ‘A’ equivale ao inteiro 65 e ‘Z’ equivale ao inteiro 90 logo a sequência de ‘A’-‘Z’ vai de 65 à 90;
Para descobrir o restante é só brincar.
Desenvolvendo um pequeno algoritmo, noto que ao somar dois char’s ou mais o resultado é um número, isso tem a ver com o chamado “par substituto” ?
Como eu já falei um char é uma variável que pode armazenar inteiros de 16bits;
Tente mudar seu código para:
public static void main(String[] args) {
char a = 'A';
char b = 'B';
char c = 'C';
System.out.println((char)(a + b + c));
}
[/quote]
Bom dia Evrando1979 (eu também sou dessa data)
Cara me diz uma coisa e quanto ao par substituto?
Graças a criação do UNICODE 4.0 que tem mais caracteres do que é possível representar com 16 bits, o Java 5 passou a adotar também o uso de caracteres substitutos para as variáveis do tipo String. Sinceramente eu não sei como isso afeta o char, já que um para substituto é composto por dois char.
Vou dar uma pesquisada, e qualquer coisa posto aqui.