Quais são os tipos de char?

30 respostas
F

Gostaria de saber quais os tipos da variavel char e pra que eles servem???

30 Respostas

J
F

Valew

L

Ola Felipe!

O char é um tipo de variavel que aceita a inserção de um caractere apenas.

Exemplo:

char letra = 'S';

Repare que a atribuição de valores é realizada atraves de aspas simples (’ ’ );
Sendo assim, não é possivel tentarmos colocar dois caracteres dentro de um mesmo char.

//Não funciona
char letras = 'ST';

Caso queira montar um cadeia de caractes, tens duas saidas:

  • montar um array de char’s
char[] letras = new char[2];
letras[0] = 'S';
letras[1] = 'T';
  • utilizar o tipo String
//Repare que agora utiliza-se aspas duplas (" " )
String letras = "ST";

Não sei se vc ja conhece o String. Caso não conheceça proucure dar uma olhadinha…

Bons estudos.

[]'s

R

Na prática, um char é um inteiro de 16-bits sem sinal. A atribuição

char c = 1002;

é perfeitamente legal.

L

rmendes08:
Na prática, um char é um inteiro de 16-bits sem sinal. A atribuição

char c = 1002;

é perfeitamente legal.

Claro amigo!
Mas acontece que se voce fizer isso e mandar imprimir a variável c irá imprimir “?” e não 1002, seguindo os codigos da tabela ASCII.

Não sei, mas não vejo muitas pessoas fazerem “char c = 65;” para imprimir um A…

[]'s

R

lucasgcp:
rmendes08:
Na prática, um char é um inteiro de 16-bits sem sinal. A atribuição

char c = 1002;

é perfeitamente legal.

Claro amigo!
Mas acontece que se voce fizer isso e mandar imprimir a variável c irá imprimir “?” e não 1002, seguindo os codigos da tabela ASCII.

Não sei, mas não vejo muitas pessoas fazerem “char c = 65;” para imprimir um A…

[]'s

Obviamente que não, é muito melhor usar literais de caracteres do que o valor propriamente dito. Mas mesmo os literais de caracteres também são constantes inteiras.

L

Claro claro!

Concordo com vc…

F

Tendi, o char é uma variavel q guarda apenas um caractere e deve estar entre aspas!!!E se vc guardar dois caractere tem q estar entre duas aspas!! é issoo??

L

Na pratica sim…

Como nosso amigo rmendes08 ressaltou, o char na verdade é um inteiro, que trabalha com manipulação da tabela ASCII. Quando tiver um tempo, de uma estudada nela. Assim você podera realizar testes como :

char letra = 65;
//IMPRIMI A LETRA 'A'
System.out.print(letra);

Lembre-se que é possivel armazenar apenas 1 caractere por char. Sendo assim aspas dupla com char não funciona. Se for guardar mais de um caractere utilize String ou vetor de char como dito no post acima…

[]'s

E

Acontece de imprimir um “?” em vez de uma letra “COPTIC CAPITAL LETTER GANGIA” só porque a fonte que foi usada para imprimir não reconhece esse caracter estranho. Por exemplo, no terminal (ou no Command Prompt) normalmente essas letras mais estranhas não aparecem.



F

bl…vou procurar sobre essa tabela sim; o String é uma variavel primitiva ou não??? Já que ele pode guardar um punhado de caracteres!!

L

Não,

a String não é um tipo de dados primitivo. Na verdade quando fazemos

String letras = "abcd";

Estamos criando um objeto da classe String.

F

ok ok…mais em relação aquela tabela q vc falou ASCII são codigos padrões q passa informações!! E só pra isso q ela serve??

L

Basicamente sim!

Para mais informações acesse este link!

[]'s

F

blz…vou tentar apreder agora como é o esquema dos numeros binarios!!! :!:

F

Tipo 101 = 1* 2 = 2 + 0 = 2 * 2 = 4 + 1 =5… É isso mesmo né???
Valew mesmo…até segunda

L

Nao intendi muito bem o que vc quis dizer…

Valor em decimal:     4     2     1      //valor decimal para cada posição do binario 

Numero binario   :     1     0     1

Onde temos ‘1’, somamos o valor decimal daquela posição.
Assim temos (da direita para a esquerda:

1 + 0 + 4 = 5

Caso fosse o numero 1001:

Valor em decimal:     8     4     2     1      //valor decimal para cada posição do binario 

Numero binario   :     1     0     0     1

Da direita para a esquerda:

1 + 0 + 0 + 8 = 9

Sacou?

[]'s

edit:
achei um artigo muito bom…

Dê uma olhada nele: http://www.newtoncbraga.com.br/index.php/artigos/54-dicas/394-entenda-a-numeracao-binaria.html

F

Tipo…nesse esquema:
8 4 2 1
1 0 0 1

vc tem os numerais binarios e os decimais…mais quando vc só tem os binarios???

F

putz…to com uma duvida…aí aí aí!!! os numeros binarios são esses 0011 e como ficaria os numerais decimais: 0121???
ficaria assim:
0121
0011

F

entra la no msn…vou te mandar um desenho explicando como eu to fazendo!!!

R

Na verdade, Java não trabalha com ASCII, mas sim com Unicode em UTF-16. Ou seja, os caracteres são mapeados segundo o padrão Unicode, e codificados em UTF-16. Para os caracteres mais comuns ele coincide com a tabela ASCII, mas Java suporta uma quantidade muito maior de caracteres, inclusive caracteres chineses, japoneses, árabes, gregos, etc.

F

E seu eu quizer achar um numero qualquer e quizer transformar em binario.
p.exemplo: 13 13/2 = 6 resto 1; 6/2 = 3 resto 0; 3/2 = 1 resto 1; 1 /2 = 1 resto 0.

Sendo assim o numero binario é 0 1 0 1.

obs: todos os numeros pares terminam com 0 e os impares com 1. Menos o 1.

L

Voce acabou se confundindo…

veja:

13 / 2 = 6 resto -> 1
6 / 2 = 3 resto -> 0
3 / 2 = 1 resto -> 1
1/2 = 0 resto -> 1

A leitura é feita de baixo para cima.

Logo, 13 em binario é : 1101.

Sacou?

F

aham…é q eu sempre me engano no final com o 2 e o 1!! =/

agora o 17:

17/2 = 8; resto 1
8/2 = 4 ; resto 0
4/2 = 2 ; resto 0
2/2 = 1 ; resto 0
1/2 = 0 ; resto 1

10001

fazendo a soma:

16 8 4 2 1
1 0 0 0 1

16 + 1 = 17; agora deu certo

L

eu vi o que vc tava fazendo…

UAEHUEHAUHEueuaEA

matematica é forte ai hein irmao…

F

hsauhasuas é mt coisa na minha cabeça…gripado…dor de cabeça…hj ta dificil de passar a hora…pqp

Mais vamo la:

Vou fazer o 193 !

193/2 = 96; resto 1
96/2 = 48; resto 0
48/2 = 24; resto 0
24/2 = 12; resto 0
12/2 = 6; resto 0
6/2 = 3; resto 0
3/2 = 1; resto 1
1/2 = 0; resto 1

11000001

128 64 32 16 8 4 2 1
1 1 0 0 0 0 0 1

Soma = 128 + 64 + 1 = 193 ufaa

F

Agora retomar os estudos no Java!! ^^

H

lucasgcp:
Não,

a String não é um tipo de dados primitivo. Na verdade quando fazemos

String letras = "abcd";

Estamos criando um objeto da classe String.

Se eu não me engano, String é um tipo de matriz, guarda individualmente o valor de cada caractere sendo possível acessá-los depois.

Quanto a pergunta, char é um dos tipos de variáveis primitivas.

No java temos variáveis primitivas e de referência. Estuda bem isso, é importante entender esses conceitos.

L


Se eu não me engano, String é um tipo de matriz, guarda individualmente o valor de cada caractere sendo possível acessá-los depois

Em c# é possivel manipular a String como se fosse um vetor… Mas em java, que eu saiba, nao tem jeito nao…

H

lucasgcp:

Se eu não me engano, String é um tipo de matriz, guarda individualmente o valor de cada caractere sendo possível acessá-los depois

Em c# é possivel manipular a String como se fosse um vetor… Mas em java, que eu saiba, nao tem jeito nao…

foi mal, sou iniciante no Java ainda, to acostumado com outras linguagens, acho que falei besteira, hehe.

Edit: Dei uma garimpada ae, achei algumas informações: http://www.guj.com.br/articles/103 , http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html .

Pelo que entendi dá pra acessar(imprimir, pegar, atribuir a alguma coisa) o valor sim, só não dá pra modificar esse valor.

Criado 9 de junho de 2011
Ultima resposta 14 de jun. de 2011
Respostas 30
Participantes 6