image

Acesse bootcamps ilimitados e +650 cursos pra sempre

75
%OFF
Marley
Marley15/12/2025 12:05
Compartilhe

Você Sabia Que String é uma Classe ?

    String em Java: Guia Completo

    Você sabia que a String é uma classe e não um tipo primitivo igual (int, double, char)? Ela é muito utilizada em nossos programas e representa cadeias de caracteres. Dá para inicializar com o construtor, sem construtor, e realizar junção de textos:

    // Inicializa com o construtor
    String variavel = new String("Seu texto");
    
    // Inicializa sem o construtor 
    String variavel = "seu texto";
    
    // Junção dos textos (Concatenação)
    String msg = variavel + ", está aqui";
    

    A Oracle pensou em reduzir o comando para ser guardado na memória, ou seja, se já existe um código idêntico, há um apontamento para a variável, e na reutilização, há uma economia de memória através do String Pool.

    Então, se você utilizar outras variáveis, mas com mesmo conteúdo, o Java reutiliza a mesma referência na memória.

    Métodos Principais da Classe String

    charAt()

    Utilizamos o charAt() para saber a posição da letra em específico, ou seja, leia uma String como se fosse um array de caracteres:

    String nome = "ANA";
    System.out.println(nome.charAt(1)); // N
    

    length()

    O método length() é muito utilizado para saber a quantidade de caracteres dentro de uma String:

    String texto = "usuario";
    System.out.println(texto.length()); // 7
    

    equals()

    O método equals() é muito utilizado para comparações de String, verificando se um valor é igual ao digitado:

    String mensagem1 = "Ola";
    String mensagem2 = "Ola";
    String usuario = "Mario";
    System.out.println(mensagem1.equals(mensagem2)); // true
    System.out.println(mensagem1.equals(usuario)); // false
    

    equalsIgnoreCase()

    Similar ao equals(), mas ignora diferenças entre maiúsculas e minúsculas:

    String texto1 = "Java";
    String texto2 = "JAVA";
    System.out.println(texto1.equalsIgnoreCase(texto2)); // true
    

    substring()

    O método substring() é utilizado para realizar uma manipulação de String mais elaborada, extraindo apenas uma parte da String:

    String minhaString = "Hello World!!";
    System.out.println(minhaString.substring(6)); // World!!
    System.out.println(minhaString.substring(0, 5)); // Hello
    

    replace()

    O método replace() é utilizado para a substituição de caracteres ou sequências de caracteres:

    String minhaString = "Hello World!!";
    System.out.println(minhaString.replace("World", "Java")); // Hello Java!!
    System.out.println(minhaString.replace('!', '.')); // Hello World..
    

    toUpperCase() e toLowerCase()

    Esses métodos convertem toda a String para maiúsculas ou minúsculas:

    String texto = "Java Programming";
    System.out.println(texto.toUpperCase()); // JAVA PROGRAMMING
    System.out.println(texto.toLowerCase()); // java programming
    

    trim()

    Remove espaços em branco no início e no final da String:

    String texto = "   Hello Java   ";
    System.out.println(texto.trim()); // "Hello Java"
    

    contains()

    Verifica se a String contém uma determinada sequência de caracteres:

    String texto = "Aprendendo Java";
    System.out.println(texto.contains("Java")); // true
    System.out.println(texto.contains("Python")); // false
    

    startsWith() e endsWith()

    Verificam se a String começa ou termina com determinada sequência:

    String arquivo = "documento.pdf";
    System.out.println(arquivo.startsWith("doc")); // true
    System.out.println(arquivo.endsWith(".pdf")); // true
    

    indexOf() e lastIndexOf()

    Retornam a posição da primeira ou última ocorrência de um caractere ou substring:

    String texto = "Java é uma linguagem Java";
    System.out.println(texto.indexOf("Java")); // 0
    System.out.println(texto.lastIndexOf("Java")); // 21
    System.out.println(texto.indexOf("Python")); // -1 (não encontrado)
    

    isEmpty() e isBlank()

    isEmpty() verifica se a String está vazia, enquanto isBlank() (Java 11+) verifica se está vazia ou contém apenas espaços em branco:

    String vazia = "";
    String espacos = "   ";
    System.out.println(vazia.isEmpty()); // true
    System.out.println(espacos.isEmpty()); // false
    System.out.println(espacos.isBlank()); // true (Java 11+)
    

    split()

    Divide a String em um array com base em um delimitador:

    String frutas = "maçã,banana,laranja,uva";
    String[] arrayFrutas = frutas.split(",");
    // arrayFrutas = ["maçã", "banana", "laranja", "uva"]
    
    for (String fruta : arrayFrutas) {
      System.out.println(fruta);
    }
    

    concat()

    Concatena Strings (alternativa ao operador +):

    String parte1 = "Hello";
    String parte2 = " World";
    String resultado = parte1.concat(parte2);
    System.out.println(resultado); // Hello World
    

    repeat()

    Repete a String um número específico de vezes (Java 11+):

    String texto = "Java ";
    System.out.println(texto.repeat(3)); // Java Java Java 
    

    Dicas Importantes

    1. Strings são imutáveis: Toda operação em String cria um novo objeto na memória
    2. Use StringBuilder para concatenações múltiplas e melhor performance
    3. String Pool: Strings literais são armazenadas em um pool especial para economia de memória
    4. Comparação: Use equals() para comparar conteúdo, não o operador ==

    Referências

    YouTube. (n.d.). Retrieved December 14, 2025, from https://youtu.be/cSLNV2CZ8j4?t=48

    Cordeiro, G. (2023, February 23). A Classe String no Java. DIO. https://www.dio.me/articles/a-classe-string-no-java

    Devmedia. (2012, August 17). String em Java: Entendendo e utilizando essa classe. DevMedia. https://www.devmedia.com.br/string-em-java-entendendo-e-utilizando-essa-classe/25503

    String (Java Platform SE 8). (2025, October 20). Oracle.com. https://docs.oracle.com/javase/8/docs/api/java/lang/String.html

    W3Schools online JAVA editor. (n.d.). W3schools.com. Retrieved December 15, 2025, from https://www.w3schools.com/java/tryjava.asp?filename=demo_ref_string_length

    Compartilhe
    Recomendados para você
    GitHub Copilot - Código na Prática
    CI&T - Backend com Java & AWS
    Nexa - Machine Learning e GenAI na Prática
    Comentários (0)