Diferencia entre “char” y “String” en Java

Estoy leyendo un libro para Java que estoy tratando de aprender, y tengo una pregunta. No puedo entender cuál es la diferencia entre el tipo de variable char y String . Por ejemplo, hay una diferencia entre int y short , los bytes en la memoria y el área de números que tienen.

Pero, ¿cuál es la diferencia entre char y String ? excepto que uso de char (‘) y “Cadena” (“).

PD: es mi primer lenguaje de progtwigción “real”. (En la escuela aprendí un lenguaje falso para el propósito de la lección de progtwigción).

char es un personaje. String tiene cero o más caracteres.

char es un tipo primitivo. String es una clase.

 char c = 'a'; String s = "Hi!"; 

Tenga en cuenta las comillas simples para char , y comillas dobles para String .

char significa solo carácter. En java es un personaje UTF-16. String se puede pensar como una matriz de caracteres.

Entonces, imagina la cadena “Android”. Se compone de los caracteres 'A', 'n', 'd', 'r', 'o', 'i' y nuevamente 'd' .

char es un tipo primitivo en java y String es una clase que encapsula una matriz de chars .

En términos simples, char es una letra, mientras que String es una colección de letras (o una palabra). La distinción de ' y " es importante, ya que 'Test' es ilegal en Java.

char es un tipo primitivo, String es una clase

Le recomendaría que lea la documentación del tutorial de Java alojado en el sitio web de Oracle cada vez que tenga dudas sobre cualquier tema relacionado con Java.

Puede obtener una comprensión clara de los conceptos siguiendo los siguientes tutoriales:

  • Caracteres

  • Instrumentos de cuerda

Char es un alfabeto único donde String es una secuencia de caracteres. Char es un tipo de datos primitivo donde como String es una clase.

Un char tiene un solo carácter, mientras que una cadena contiene muchos caracteres.

char es un tipo primitivo, y puede contener un solo carácter.

String es, en cambio, un tipo de referencia, por lo tanto, un objeto en toda regla. Puede contener cualquier cantidad de caracteres (internamente, los objetos String guardan en una matriz char ).

Los tipos primitivos en Java tienen ventajas en términos de velocidad y huella de memoria. Pero no son objetos reales, por lo que hay algunas posibilidades de que pierdas su uso. No se pueden usar como parámetros generics, no podrían tener métodos o campos, y así sucesivamente.

Sin embargo, cada tipo de primitiva de Java tiene un objeto completo correspondiente, y la conversión entre ellos se realiza automágicamente por el comstackdor (esto se denomina autoboxing).

Puedes, por ejemplo, hacer:

 int i=12; Integer l=i; 

El comstackdor se encarga de convertir el int a un Integer .

char tiene solo un carácter (letras, números, …)

 char example = 'x'; 

la cadena puede tener cero caracteres o tantos como quieras

 String example = "Here you can have anything"; 

Bueno, char (o su Character clase contenedora) significa un solo carácter, es decir, no se puede escribir 'ab' mientras que String es un texto que consiste en una serie de caracteres y se puede pensar en una cadena en una matriz de caracteres (de hecho la clase String tiene un miembro de char[] value ).

Podrías trabajar con matrices simples, pero eso es bastante tedioso y, por lo tanto, la clase String está ahí para proporcionar una forma conveniente de trabajar con textos.

Un char simplemente contiene un solo alfabeto y una cadena tiene una palabra completa o un número de palabras con una secuencia de escape insertada al final automáticamente para decirle al comstackdor que la cadena ha terminado aquí. (0)

Char es un tipo de datos. Puede contener una sola letra o número. Para convertir una cadena en una matriz de caracteres, puede usar el theNameOfTheString.toCharArray(); .

String tiene muchos valores de char. Esto se expresa mejor a través de un ejemplo.

Ejemplos:

 char someChar = 'A'; String someString = "I like to eat food!"; 

Espero que esto haya ayudado! 🙂

En char, solo se puede usar un carácter único (debe estar entre comillas simples), podría ser un alfabeto o cualquier número o incluso un carácter especial. a continuación están los ejemplos relacionados para char

 char a = '4'; char a = '$'; char a = 'B'; 

En String se puede usar la línea completa (debe estar entre comillas dobles). a continuación se encuentran los ejemplos relacionados para String

 String a = "Hello World"; String a = "1234"; String a = "%%"; 

En cadena, podemos almacenar múltiples caracteres. por ejemplo, char ch='a';

 String s="a"; 

Cadena s1 = “aaaa”;

En términos de valores ASCII, puede decir que char es un único valor ASCII que va de 0 a 255. Mientras que String es una colección de valores ASCII. Prueba este código para aprender mejor.

  char c='a'; String s="abcdefg hijkl"; int i=c; System.out.println(i); for(int count=0;count 

El resultado será:

97

97 32 98 32 99 32 100 32 101 32 102 32 103 32 104 105 106 107 108

Dado que 97 es el valor ASCII para la pequeña 'a'. 32 es el valor ASCII para el espacio. Espero que esto ayude a una comprensión profunda del concepto.

Un personaje es cualquier cosa que pueda escribir, como letras, dígitos, signos de puntuación y espacios. Las cadenas aparecen en variables. Es decir, son elementos de texto en perlas. Un personaje consta de 16bits. Mientras que la longitud de una cadena es ilimitada.