[Resolvido] Operador de comparação char e Tipo de dados Int

1 resposta
guj1

Uma pequena dúvida.

Percebi que uma comparação de int com string dá erro de compilação.
Já comparando o mesmo int com um char não dá erro.
Se a classe integer aceita parâmetros do tipo string porque essa comparação não é aceita?

E por que o construtor da classe Integer aceita parâmetro String, como isso seria útil? E String aceita aspas duplas, por que a comparação não é aceita?

Grato pela atenção.

1 Resposta

A

int acheita os tipos char simplesmente pois este tipo é “cabível” nos tipo int . Não esqueça que o char usam a tabela Ascii. Cabíbel é quando não será preciso fazer um cast explícito pois o tipo que está recebendo um valor (através de uma variável de outro tipo) é menor em termos de tamanho de bits. Já integer é um tipo wrappler, que é um tipo envoltório. Integer são objetos. Por ser um objeto ele aceita diversos argumentos em seus construtores entre eles Strings. Lembre-se que um String terá que ser um número do tipo int válido se for um valor como parâmetro “1AB” dará erro de tempo de execução. int e integer não são a mesma coisa . Pra começar, como já foi dito integer é um objeto (Do tipo wrapplers) e int não é um objeto é um tipo primitivo e portanto tem seus valores literais definidos. Já o conjunto de valores do integer é maior .

Criado 27 de dezembro de 2013
Ultima resposta 27 de dez. de 2013
Respostas 1
Participantes 2