Char vs String em Java

Mohammad Irfan 12 outubro 2023
  1. Criando Char em Java
  2. Criando String em Java
  3. Conversão de Char para String em Java
  4. Conversão de String para Char em Java
  5. Char primitivo para objeto Character em Java
Char vs String em Java

Este tutorial apresenta a diferença entre char e String em Java.

Em Java, char é um tipo de dados primitivo usado para conter um único caractere. Significa um único caractere do conjunto de caracteres UTF-16. Em comparação, String é uma classe que contém uma sequência de caracteres e pode ser considerada uma matriz de caracteres.

Você pode pensar em uma string como Delft, que consiste em caracteres D, e, l, f, t. Então, basicamente, um grupo de char forma uma string. Vamos entender com alguns exemplos.

Criando Char em Java

Em Java, para criar um char, usamos uma aspa simples que envolve o caractere. Um personagem pode ser qualquer um dos UTF-16. Aqui, usamos uma variedade de caracteres para entender o conjunto de caracteres. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    char ch1 = 'a';
    System.out.println(ch1);
    char ch2 = 'A';
    System.out.println(ch2);
    char ch3 = '1';
    System.out.println(ch3);
    char ch4 = '@';
    System.out.println(ch4);
  }
}

Resultado:

a
A
1
@

Criando String em Java

Aqui, criamos uma String usando aspas duplas. Uma string pode conter qualquer caractere do conjunto UTF-16, como números, caracteres especiais, espaços, etc. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    String str1 = "Hello,";
    System.out.println(str1);
    String str2 = "This is";
    System.out.println(str2);
    String str3 = "4 Line String";
    System.out.println(str3);
    String str4 = "Example!";
    System.out.println(str4);
  }
}

Resultado:

Hello,
This is
4 Line String
Example!

Conversão de Char para String em Java

Char e String usam caracteres para criar e, às vezes, quando precisamos obter uma string de um char, podemos usar o método toString() da classe de caracteres. Este método retorna um objeto String de valor char primitivo. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    char ch = 'A';
    System.out.println(ch);
    String str = Character.toString(ch);
    System.out.println(str);
  }
}

Resultado:

A
A

Conversão de String para Char em Java

Da mesma forma, podemos converter uma string em char usando o método charAt() da classe String. Este método retorna um caractere do índice especificado. Podemos obter qualquer caractere da String apenas especificando um valor de índice.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello";
    System.out.println(str);
    char ch = str.charAt(0);
    System.out.println(ch);
  }
}

Resultado:

Hello
H

Char primitivo para objeto Character em Java

Se você está trabalhando com caracteres primitivos e deseja convertê-los em objetos, use a classe Character. Você apenas atribui o char à referência de caractere, e Java fará o resto automaticamente.

Quando um valor primitivo é atribuído a uma referência, ele é automaticamente convertido em um objeto. Esse processo é chamado de boxing em Java e seu processo reverso é chamado de unboxing.

public class SimpleTesting {
  public static void main(String[] args) {
    char ch = 'A';
    System.out.println("primitive char " + ch);
    Character chr = ch;
    System.out.println("char object " + chr);
    char ch2 = chr;
    System.out.println("primitive char " + ch2);
  }
}

Resultado:

primitive char A
char object A
primitive char A

Artigo relacionado - Java Char

Artigo relacionado - Java String