💻
Micro-fundamentos - AEDs
  • Introdução
  • Algoritmos e Estruturas de Dados 1
    • Parte 1 - Começando com o básico
      • Criando nosso primeiro algoritmo
      • Estruturas de dados primitivas
      • Atribuição e declaração de variáveis
      • Leitura e escrita de dados
      • Estruturas condicionais e Operadores relacionais
      • Operadores aritméticos
      • Operadores lógicos
      • Estruturas de repetição
      • Funções e escopo
    • Parte 2 - Conceitos avançados
      • Introdução a ponteiros
      • Estruturas de dados não primitivas
      • Entendendo-recursão
      • Retornando argumentos de funções recursivas
      • Como a máquina interpreta seus códigos
    • Parte 3 - Conhecendo POO e seus Princípios
      • O que é Programação Orientada a Objetos?
      • Criando nossa primeira classe
      • Entendendo Encapsulação
      • Entendendo Herança
      • Entendendo Polimorfismo
  • Algoritmos e Estruturas de Dados 2
    • Parte 1 - Complexidade e Programação Competitiva
      • Complexidade e notação Big O
      • Complexidade em funções recursivas
      • Crescimento de funções - Notação Theta e Omega
      • Programação competitiva
    • Parte 3 - Algoritmos de pesquisa
      • Busca linear
    • Parte 4 - Ordenação Interna
      • Quicksort
    • Parte 5 - Tipos Abstratos de Dados (TAD)
    • Parte 6 - Estruturas Flexíveis e Estáticas
    • Parte 7 - Árvores e Tabela Hash
      • Árvore Binária
  • Algoritmos e Estruturas de Dados 3
    • CRUD
    • Intercalação balanceada
  • C
    • Argumentos-de-entrada
    • debug
      • Introducao-ao-gdb
      • Introducao-ao-valgrind
    • ponteiro
      • Ponteiros e Alocação de Memória em C
    • string
      • Strings em C
      • Leitura-de-Strings-em-C
  • Java
    • Nocoes-basicas
    • Argumentos-de-entrada
    • Debug em Java
      • java-debugger-tool
      • visual-studio-debugger
    • string
      • String-em-Java
    • Tratamento de Exceções em Java
      • try-catch-e-o-throws
  • COMO-CONTRIBUIR
Powered by GitBook
On this page
  • Você vai aprender
  • Pré-Requisitos
  • Strings em Java
  • Criando uma string
  • Acessar um caractere e o tamanho de uma String
  • links úteis
  1. Java
  2. string

String-em-Java

Você vai aprender

  • Tipo String em Java

  • Como criar uma String

  • Manipulação básica de seus caracteres

Pré-Requisitos

  • Noções básicas de Java

Strings em Java

String é um tipo de dado usado para representar uma cadeia de caracteres. Praticamente, todas as linguagens de programação modernas possuem a String implementado, e a linguagem Java é delas. Por conta disso, diferente de C, por exemplo, aqui já temos tudo pronto na palma das mãos (ou nesse caso no nosso editor de código).

Criando uma string

Para criar uma String, é só declaramos o tipo como qualquer outra variável.

public class Main {

  public static void main(String[] args) {
    String s = "Hello World";
    System.out.println(s);
  }
}

Assim como qualquer outro objeto em Java, podemos também criar uma String chamando o seu construtor.

public class Main {

  public static void main(String[] args) {
    String s = new String("Hello world");
    System.out.println(s);
  }
}

Tem vários outras maneiras em como podemos iniciar uma String em Java. Mas deixarei esses exemplos para vocês olharem na documentação oficial da Oracle, que estará na seção de links úteis dessa aula ;-).

Por agora, você entendeu que é simples e prático instanciar uma String, agora como podemos manipular a mesma?

Acessar um caractere e o tamanho de uma String

As duas funções mais básicas são respectivamente a:

  • charAt() para acessar um caractere (char) em uma determinada posição da String.

public class Main {

  public static void main(String[] args) {
    String s = "Hello world";
    char c = s.charAt(6); // sexto caractere da String é o "w"
    System.out.println(c);
  }
}

Uma observação importante, é que a função charAt() apenas retorna para nós um caractere que está na posição indicada, isso significa que não conseguimos usar essa função para mudar um caractere da String.

Além disso, se tentarmos colocar uma posição fora do índice da String, o Java irá nos retornar uma exceção (Exception), chamada StringIndexOutOfBoundsException.

public class Main
{
	public static void main(String[] args) {
      String s = "Hello world";
      char c = s.charAt(20); // Impossível, pois "s" tem tamanho 11
      System.out.println(c);
  }
}

Ao tentarmos rodar esse código, teremos a seguinte mensagem:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 20
        at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:47)
        at java.base/java.lang.String.charAt(String.java:693)
        at Main.main(Main.java:14)

Nesse momento não iremos fazer tratamento de exceção, deixaremos isso para uma aula futura, apenas entenda que ao utilizar essa função, certos cuidados são necessários para não causarmos um erro.

  • length() para conseguir o tamanho de uma String.


public class Main {

  public static void main(String[] args) {
    String s = "Hello world"
    System.out.println(s.length());
  }
}

Importante notar, que essa função retornar o tamanho igual a unidades de unicode, o que evita a maior parte dos problemas com Charset.

Neste caso, o nosso código irá retornar 11, que a quantidade caractéres presentes na String "Hello world".

11

links úteis

Documentação-oficial-sobre-a-String

PreviousstringNextTratamento de Exceções em Java

Last updated 2 years ago