Um trecho de palestra com um mentor como parte do curso Codegym University. Inscreva-se no curso completo.
1 Comparando strings
Uma das operações mais comuns com strings é a comparação. A classe String tem mais de dez métodos diferentes que são usados para comparar uma string com outra string. Abaixo vamos dar uma olhada em 8 dos principais.
Métodos | Descrição |
---|---|
|
Strings são consideradas iguais se todos os seus caracteres forem correspondentes. |
|
Compara strings, ignorando maiúsculas e minúsculas (ignora se são maiúsculas ou minúsculas) |
|
Compara strings, retorna o número de caracteres correspondentes desde o início da string. |
|
Retorna o número de caracteres correspondentes desde o início de uma string, ignora maiúsculas e minúsculas |
|
Compara partes de strings |
|
Verifica se a string atual começa com a stringprefix |
|
Verifica se a string atual termina com a stringsuffix |
Digamos que você queira escrever um programa que peça ao usuário um caminho para um arquivo e verifique o tipo de arquivo com base em sua extensão. O código de tal programa pode ser algo como isto:
Código | Notas |
---|---|
|
Cria um Scanner objeto Lê uma linha do console Verifica se a string path termina com a string dada |
2 Procurando por substrings
Depois de comparar strings, a segunda operação mais popular é encontrar uma string dentro de outra. A classe String também possui alguns métodos para isso:
Métodos | Descrição |
---|---|
|
Procura a string str na string atual. Retorna o índice do primeiro caractere da primeira ocorrência. |
|
Procura a string str na string atual, ignorando os primeiros index caracteres. Retorna o índice da ocorrência. |
|
Procura a string str na string atual, começando do final. Retorna o índice da primeira ocorrência. |
|
Procura a string str na string atual a partir do final, ignorando os primeiros index caracteres. |
|
Verifica se a string atual corresponde a um padrão especificado por uma expressão regular. |
Os métodos indexOf(String)
e indexOf(String, index)
são freqüentemente usados em combinação. O primeiro método permite localizar a primeira ocorrência da substring passada na string atual. E o segundo método permite localizar a segunda, terceira etc. ocorrências ignorando os primeiros caracteres de índice.
Suponha que temos um URL como " https://domain.com/about/reviews " e queremos substituir o nome de domínio por " codegym.cc ". Os URLs podem ter todos os tipos de nomes de domínio diferentes, mas sabemos o seguinte:
- O nome de domínio é precedido por duas barras — "//"
- O nome de domínio é seguido por uma única barra — "
/
"
Veja como seria o código para tal programa:
Código | Notas |
---|---|
|
Crie um objeto Scanner Lê uma linha do console Obtém o índice da primeira ocorrência da string " // " Obtemos o índice da primeira ocorrência da string / , mas procuramos somente após uma ocorrência dos caracteres // . Pegamos a string do começo ao fim dos caracteres // Pegamos a string do / começo ao fim. Concatenamos as strings e o novo domínio. |
Os métodos lastIndexOf(String)
e lastIndexOf(String, index)
funcionam da mesma forma, apenas a busca é realizada do final da string para o início.
3 Criando substrings
Um trecho de palestra com um mentor como parte do curso Codegym University. Inscreva-se no curso completo.
Além de comparar strings e encontrar substrings, há outra ação muito popular: obter uma substring de uma string. Acontece que o exemplo anterior mostrou uma substring()
chamada de método que retornou parte de uma string.
Aqui está uma lista de 8 métodos que retornam substrings da string atual:
Métodos | Descrição |
---|---|
|
Retorna a substring especificada pelo intervalo de índice beginIndex..endIndex . |
|
Repete a string atual n vezes |
|
Retorna uma nova string: substitui o caractere oldChar pelo caracterenewChar |
|
Substitui a primeira substring, especificada por uma expressão regular, na string atual. |
|
Substitui todas as substrings na string atual que correspondem à expressão regular. |
|
Converte a string para letras minúsculas |
|
Converte a string para letras maiúsculas |
|
Remove todos os espaços no início e no final de uma string |
Aqui está um resumo dos métodos disponíveis:
substring(int beginIndex, int endIndex)
método
O substring
método retorna uma nova string que consiste nos caracteres da string atual, começando no caractere com índice beginIndex
e terminando em endIndex
. Como em todos os intervalos em Java, o caractere com índice endIndex
não é incluído no intervalo. Exemplos:
Código | Resultado |
---|---|
|
|
|
|
|
|
|
|
Se o endIndex
parâmetro não for especificado (o que é possível), a substring será obtida do caractere em beginIndex até o final da string.
repeat(int n)
método
O método repeat simplesmente repete os n
tempos da string atual. Exemplo:
Código | Resultado |
---|---|
|
|
|
|
|
|
|
|
replace(char oldChar, char newChar)
método
O replace()
método retorna uma nova string na qual todos os caracteres oldChar
são substituídos pelo caractere newChar
. Isso não altera o comprimento da string. Exemplo:
Código | Resultado |
---|---|
|
|
|
|
|
|
|
|
replaceFirst()
e replaceAll()
métodos
O replaceAll()
método substitui todas as ocorrências de uma substring por outra. O replaceFirst()
método substitui a primeira ocorrência da substring passada pela substring especificada. A string a ser substituída é especificada por uma expressão regular. Vamos nos aprofundar nas expressões regulares na missão Java Multithreading .
Exemplos:
Código | Resultado |
---|---|
|
|
|
|
|
|
|
|
toLowerCase() and toUpperCase()
métodos
Conhecemos esses métodos quando aprendemos a chamar os métodos da String
classe.
trim()
método
O trim()
método remove os espaços iniciais e finais de uma string. Não toca nos espaços que estão dentro de uma string (ou seja, não no início ou no final). Exemplos:
Código | Resultado |
---|---|
|
|
|
|
|
|
|
|
GO TO FULL VERSION