2011-04-19 28 views

Respuesta

32

String no es un tipo de datos primitivo, es una clase, un tipo de referencia. Ahora admitimos que es compatible directamente en la VM, y hay literales en el lenguaje, pero todavía no es un tipo primitivo.

+5

Respuesta más cercana. String es una clase que contiene muchos métodos. Por ejemplo, no puede invocar llamadas de método en tipos de datos primitivos. Una cadena contiene un valor de una matriz 'byte []': '{'v', 'a', 'l', 'u', 'e'}' –

+0

¿Cómo podría haberme perdido eso? Gracias. – enchance

2

porque es una clase y no un tipo de datos primitivo. String es efectivamente una matriz de caracteres.

+8

String * tiene * una matriz de caracteres. ¡Esa es una distinción importante! En Java, una cadena es un objeto, no una matriz de caracteres –

+0

, trató de mantenerlo limpio y simple. uno podría reemplazar "es" por representa, cubre, abarca ... –

+0

Entonces, ¿por qué no has hecho eso? 'Limpio y simple' no excluye 'incorrecto'. – EJP

1

Aunque el compilador tiene soporte especial para String s, como convertir literales de cadena en instancias String y realizar concatenación de cadenas, String no es un tipo primitivo, sino una clase. Por convención, los nombres de las clases comienzan en mayúsculas.

Consulte la sección JLS Types,Values and Variables para obtener una descripción de los tipos primitivos y los tipos de referencia.

-2

Cadena es una clase en java y tipo de datos de referencia. La cadena es una matriz de caracteres, por lo que no es un tipo de datos primitivo.

-1

para cuerdas en java toma prestado sintaxis C, el compilador de Java toma String como matriz de caracteres, por lo cadena es un tipo de datos abstracto hecho por matriz de caracteres primitivo tipo de datos

-1

cadena es de clase en el paquete java.lang pero in.java Todas las clases también se consideran como tipos de datos, por lo que también podemos tomar el tipo de datos de cadena. La clase can.cal es el tipo de datos definido por el usuario. Esto se debe a que un usuario puede crear una clase. Cadena a; A es una variable f del tipo de datos "cadena"

0

Cadena es un tipo de datos no predictivo. Puede usar String de la siguiente manera

int monthNumber = 2; 
String monthName = ""; 
switch(monthNumber) { 
    case 1: 
     monthName = "January"; 
     break; 
    case 2: 
     monthName = "February"; 
     break; 
    case 3: 
     monthName = "March"; 
     break; 
    case 4: 
     monthName = "April"; 
     break; 
} 
System.out.println("The month is " + monthName);