Strings Java
Strings Java
Neste tutorial, aprenderemos sobre strings Java, como criá-las e vários métodos da classe String com a ajuda de exemplos.
Em Java, uma string é uma sequência de caracteres. Por exemplo, "olá" é uma string contendo uma sequência de caracteres 'h' , 'e' , 'l' , 'l' , e 'o' .
Usamos aspas duplas para representar uma string em Java. Por exemplo,
// create a string
String type = "Java programming";
Aqui, criamos uma variável de string chamada type . A variável é inicializada com a string
Java Programming
. Exemplo:criar uma string em Java
class Main {
public static void main(String[] args) {
// create strings
String first = "Java";
String second = "Python";
String third = "JavaScript";
// print strings
System.out.println(first); // print Java
System.out.println(second); // print Python
System.out.println(third); // print JavaScript
}
}
No exemplo acima, criamos três strings chamadas first , segundo , e terceiro . Aqui, estamos criando diretamente strings como tipos primitivos.
No entanto, existe outra maneira de criar strings Java (usando o
new
palavra-chave). Vamos aprender sobre isso mais tarde neste tutorial. Observação :Strings em Java não são tipos primitivos (como
int
, char
, etc). Em vez disso, todas as strings são objetos de uma classe predefinida chamada String
. E todas as variáveis de string são instâncias do
String
classe. Operações de string Java
Java String fornece vários métodos para realizar diferentes operações em strings. Veremos algumas das operações de string comumente usadas.
1. Obter o comprimento de uma String
Para encontrar o comprimento de uma string, usamos o
length()
método da String. Por exemplo,
class Main {
public static void main(String[] args) {
// create a string
String greet = "Hello! World";
System.out.println("String: " + greet);
// get the length of greet
int length = greet.length();
System.out.println("Length: " + length);
}
}
Saída
String: Hello! World Length: 12
No exemplo acima, o
length()
O método calcula o número total de caracteres na string e o retorna. Para saber mais, visite Java String length(). 2. Junte duas strings Java
Podemos juntar duas strings em Java usando o
concat()
método. Por exemplo,
class Main {
public static void main(String[] args) {
// create first string
String first = "Java ";
System.out.println("First String: " + first);
// create second
String second = "Programming";
System.out.println("Second String: " + second);
// join two strings
String joinedString = first.concat(second);
System.out.println("Joined String: " + joinedString);
}
}
Saída
First String: Java Second String: Programming Joined String: Java Programming
No exemplo acima, criamos duas strings chamadas first e segundo . Observe a afirmação,
String joinedString = first.concat(second);
Aqui, o
concat()
método une o segundo string para o primeiro string e a atribui à joinedString variável. Também podemos juntar duas strings usando o
+
operador em Java. Para saber mais, visite Java String concat(). 3. Comparar duas Strings
Em Java, podemos fazer comparações entre duas strings usando o
equals()
método. Por exemplo,
class Main {
public static void main(String[] args) {
// create 3 strings
String first = "java programming";
String second = "java programming";
String third = "python programming";
// compare first and second strings
boolean result1 = first.equals(second);
System.out.println("Strings first and second are equal: " + result1);
// compare first and third strings
boolean result2 = first.equals(third);
System.out.println("Strings first and third are equal: " + result2);
}
}
Saída
Strings first and second are equal: true Strings first and third are equal: false
No exemplo acima, criamos 3 strings chamadas first , segundo , e terceiro . Aqui, estamos usando o
equal()
método para verificar se uma string é igual a outra. O
equals()
O método verifica o conteúdo das strings enquanto as compara. Para saber mais, visite Java String equals(). Observação :Também podemos comparar duas strings usando o
==
operador em Java. No entanto, essa abordagem é diferente da equals()
método. Para saber mais, visite Java String ==vs equals(). Caractere de escape em strings Java
O caractere de escape é usado para escapar de alguns dos caracteres presentes dentro de uma string.
Suponha que precisamos incluir aspas duplas dentro de uma string.
// include double quote
String example = "This is the "String" class";
Como as strings são representadas por aspas duplas , o compilador tratará "Este é o " como a corda. Portanto, o código acima causará um erro.
Para resolver esse problema, usamos o caractere de escape
\
em Java. Por exemplo,
// use the escape character
String example = "This is the \"String\" class.";
Agora os caracteres de escape dizem ao compilador para escapar das aspas duplas e leia todo o texto.
Strings Java são imutáveis
Em Java, as strings são imutáveis . Isso significa que, uma vez que criamos uma string, não podemos alterá-la.
Para entender mais profundamente, considere um exemplo:
// create a string
String example = "Hello! ";
Aqui, criamos uma variável de string chamada example . A variável contém a string "Olá! " .
Agora suponha que queremos mudar a string.
// add another string "World"
// to the previous tring example
example = example.concat(" World");
Aqui, estamos usando o
concat()
método para adicionar outra string World para a cadeia anterior. Parece que podemos alterar o valor da string anterior. No entanto, isso não é
true
. Vamos ver o que aconteceu aqui,
- JVM recebe a primeira string "Olá!"
- cria uma nova string adicionando "World" para a primeira string
- atribua a nova string "Hello! World" para o exemplo variável
- a primeira string "Olá!" permanece inalterado
Criando strings usando a nova palavra-chave
Até agora criamos strings como tipos primitivos em Java.
Como strings em Java são objetos, podemos criar strings usando o
new
palavra-chave também. Por exemplo,
// create a string using the new keyword
String name = new String("Java String");
No exemplo acima, criamos uma string name usando o
new
palavra-chave. Aqui, quando criamos um objeto string, o
String()
construtor é invocado. Para saber mais sobre construtor, visite Java Constructor. Observação :O
String
class fornece vários outros construtores para criar strings. Para saber mais, visite Java String (documentação oficial do Java). Exemplo:crie Java Strings usando a nova palavra-chave
class Main {
public static void main(String[] args) {
// create a string using new
String name = new String("Java String");
System.out.println(name); // print Java String
}
}
Criar String usando literais versus nova palavra-chave
Agora que sabemos como as strings são criadas usando literais de string e o
new
palavra-chave, vamos ver qual é a principal diferença entre eles. Em Java, a JVM mantém um pool de strings para armazenar todas as suas strings dentro da memória. O pool de strings ajuda na reutilização das strings.
1. Ao criar strings usando literais de string,
String example = "Java";
Aqui, estamos fornecendo diretamente o valor da string (
Java
). Portanto, o compilador primeiro verifica o conjunto de strings para ver se a string já existe. - Se a string já existir , a nova string não é criada. Em vez disso, a nova referência, exemplo aponta para a string já existente (
Java
). - Se a string não existir , a nova string (
Java
é criado.
2. Ao criar strings usando a palavra-chave new,
String example = new String("Java");
Aqui, o valor da string não é fornecido diretamente. Portanto, um novo
"Java"
string é criada mesmo que "Java"
já está presente dentro do pool de memória. Métodos de string Java
Além dos mencionados acima, existem vários métodos de string presentes em Java. Aqui estão alguns desses métodos:
Métodos | Descrição |
---|---|
contém() | verifica se a string contém uma substring |
substring() | retorna a substring da string |
juntar() | junte as strings fornecidas usando o delimitador |
substituir() | substitui o caractere antigo especificado pelo novo caractere especificado |
substituirTodos() | substitui todas as substrings que correspondem ao padrão regex |
substituirPrimeiro() | substituir a primeira substring correspondente |
charAt() | retorna o caractere presente no local especificado |
getBytes() | converte a string em uma matriz de bytes |
indexOf() | retorna a posição do caractere especificado na string |
compareTo() | compara duas strings na ordem do dicionário |
compareToIgnoreCase() | compara duas strings ignorando diferenças entre maiúsculas e minúsculas |
aparar() | remove quaisquer espaços em branco à esquerda e à direita |
formato() | retorna uma string formatada |
dividir() | quebra a string em um array de strings |
toLowerCase() | converte a string para minúscula |
toUpperCase() | converte a string para maiúscula |
valorOf() | retorna a representação de string do argumento especificado |
toCharArray() | converte a string em um char matriz |
corresponde() | verifica se a string corresponde ao regex fornecido |
começaCom() | verifica se a string começa com a string dada |
termina com() | verifica se a string termina com a string dada |
está vazio() | verifica se uma string está vazia ou não |
interno() | retorna a representação canônica da string |
contentEquals() | verifica se a string é igual a charSequence |
hashCode() | retorna um código hash para a string |
subSequência() | retorna uma subsequência da string |
Java