String é um dado Primitivo?

11 respostas
D
Os dados primitivos são 8 (char,boolean,byte,int,short,long,float,double)

Inteiros

Byte  = 8 bits

Short = 16 bits

Int   = 32 bits

Long  = 64 bits

Números Reais

Foat(precisão simples) = 32 bits

Double(precisão dupla) = 64 bits

A diferença entre precisão simples e dupla se restringe ao número de casas decimais apresentada.

Outros Tipos

Char(caracter simples)  = 16 bits

Boolean			=  1  bit(verdadeiro ou falso)

Um dado do tipo String pertence a uma classe String, deixando de ser um dado primitivo.

Dúvida: Dado Primitivo = Dado Nativo?

Gostaria que vcs, dessem uma olhada na minha resposta e se tiver algo a acrescentar ou corrigir agradeço.

SDS.

11 Respostas

T

String não é um tipo primitivo - deriva de java.lang.Object.

É que ele é tratado especialmente pela linguagem.

O que é um “dado nativo”?

pimenta

O que não for boolean, char, byte, short, int, long, float ou double (com letras minúsculas) não é primitivo.

Abraços,

miguel.horlle

String não é um dado primitivo em Java.
Dados primitivos em Java, são todos aqueles que não derivam de Object. Em java para cada tipo primitivo existe um Wrapper correspondente. Esse wrapper nada mais é que uma forma de encapsular o tipo primitivo em um objeto para promover um dos principais pilares do OO.
Como foi falado pelo colega thingol, ele é tratado de forma especial no Java, ele é imutável.
Isso significa que sempre que você modifica um Objeto do tipo String, a JVM na verdade está criando uma cópia do objeto em si.

Espero ter acrescentado algo à discução, se estiver errado ou imcompleto me corrijam por favor.

sorte

D

Valeu Pessoal!!!

Dado nativo, eu tirei do livro que estou lendo.
“Introdução a Programação Orientada a Objetos usando JAVA de Rafael Santos.”

Existe uma frase que diz: “Existem poucos tipos dados nativos em java… que não são parte da linguagem e não são instâncias de outras classe…”
Obs.Estou no início do livro.

L

Cara java tem algumas maneiras de identificar oque é oque. tipo Toda Classe começa com letra maiuscula, todo metodo começa com letra minuscula, variaveis tbm são como os metodos começando com letra minuscula. Java trata String como objetos e não como tipo primitivos como por exemplo um char, um exemplo disso é que quando você atribui uma String para uma variavel, como por exemplo.

String s = "GUJ";

é como se você fizesse algo do tipo

String s = new String("GUJ");

espero ter ajudado.

sergiotaborda
<blockquote><div class="quote-author">Daniel Ilha:</div>Os dados primitivos são 8 (char,boolean,byte,int,short,long,float,double)

Inteiros

Byte  = 8 bits

Short = 16 bits

Int   = 32 bits

Long  = 64 bits

Números Reais

Foat(precisão simples) = 32 bits

Double(precisão dupla) = 64 bits

A diferença entre precisão simples e dupla se restringe ao número de casas decimais apresentada.

Outros Tipos

Char(caracter simples)  = 16 bits

Boolean			=  1  bit(verdadeiro ou falso)

Um dado do tipo String pertence a uma classe String, deixando de ser um dado primitivo.

Dúvida: Dado Primitivo = Dado Nativo?

Boolean é um bit logico, mas é fisiciamente um byte. A menor unidade do java é byte, não bit.

Boolean = 1 byte

byte = 1 byte

short = 2 byte (com sinal)

char = 2 byte (sem sinal)

int = 4 bytes

long = 8 bytes

float = 4 bytes

double = 8 bytes

A diferença entre float e double não é a virgual é o passo. ou seja, a menor distancia entre dois numeros

tipo nativo = aquele que o processador usa
tipo primitivo = aquele que não é um objeto ou composto
tipo de “primeira classe” ( first class citizen) = aquele que sendo primitivo ou não é muito importante e tratado
de forma especial pela linguagem, compilador e runtime.

O java é independente do CPU logo ele não trabalha com tipos nativos. Todos os tipos primitivos são
construidos com tipos nativos pelo JVM mas o java em si não manipula isso.
String é um objeto e portanto não é primitivo. Ele é contudo um tipo especial, ele é um tipo de “primeira classe” ou seja,
ele tem tratamento diferenciado pela espciiifcação, sintaxe e runtime.Array seria um outro tipo que é de "primeira classe’

victorwss

De primeira classe temos:
java.lang.Object
Arrays
java.lang.String
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
java.lang.Iterable
java.lang.Thread
java.lang.Class
Classes empacotadoras (desde o java 5)
Boa parte das Exceptions e Errors do java.lang.

E deve haver mais algumas.

D

Muito obrigado pessoal!!!

Um dia eu chego lá!!!

D

Para firmar conceito:

O byte é a menor unidade em java.

Se tivesemos que desmembrar um byte e trabalhar com seus bits, como seria o comportamento?

SDS.

sergiotaborda

Daniel Ilha:
Para firmar conceito:

O byte é a menor unidade em java.

Se tivesemos que desmembrar um byte e trabalhar com seus bits, como seria o comportamento?

seria o esparado. O ponto é que não existe um tipo de dado “bit”. Se vc quiser trabalhar apenas com um bit utilize boolean ( que embora sendo um byte simula um bit). Ou use um byte, short ou int e utilize apenas o primeiro bit.

D

Valeu Sérgio!!

Minhas perguntas estão sendo primárias, mas são dúvdas que aparecem quando estou estudando.

Criado 19 de maio de 2008
Ultima resposta 22 de mai. de 2008
Respostas 11
Participantes 7