English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, vamos aprender com exemplos como criar o Java String e seus vários métodos.
No Java, uma string é uma série de caracteres. Por exemplo, "hello" é uma string que contém a sequência de caracteres "h", "e", "l", "l" e "o".
Diferente de outros linguagens de programação, as strings no Java não são tipos básicos (como int, char, etc.). Em vez disso, todas as strings são objetos da classe pré-definida chamada String. Por exemplo,
//Cria uma string String type = "java programming";
Aqui, criamos uma string chamada type. Aqui, inicializamos a string com "java programming". No Java, usamosAspas duplasRepresenta uma string.
Esta string é uma instância da classe String.
Atenção:Todas as variáveis de string são instâncias da classe String.
O Java String oferece várias métodos que nos permitem executar diferentes operações de string. Aqui estão alguns métodos comuns de string.
Método | Descrição |
---|---|
concat() | Junta duas strings |
equals() | Compara os valores de duas strings |
charAt() | Retorna o caractere existente na posição especificada |
getBytes() | Converte a string em um array de bytes |
indexOf() | Retorna a posição do caractere especificado na string |
length() | Retorna o tamanho da string especificada |
replace() | Substitui o caractere antigo especificado pelo caractere novo especificado |
substring() | Retorna a substring da string |
split() | Divide a string em um array de strings |
toLowerCase() | Converte a string para minúsculas |
toUpperCase() | Converte a string para maiúsculas |
valueOf() | Retorna a representação em string de dados especificados |
Vamos dar alguns exemplos.
class Main { public static void main(String[] args) { //Criar string String greet = "Hello! World"; System.out.println("A string é: "); + greet); //verifica o comprimento da string System.out.println("Tamanho da string: "); + greet.length()); } }
Resultados de saída
A string é: Hello! World Tamanho da string: 12
No exemplo acima, criamos uma string chamada greet. Aqui, usamos o método length() para obter o tamanho da string.
class Main { public static void main(String[] args) { //Criar string String greet = "Hello! "; System.out.println("Primeira string: ") + greet); String name = "World"; System.out.println("Segunda string: ") + name); //Conectar duas strings String joinedString = greet.concat(name); System.out.println("A string conectada: ") + joinedString); } }
Resultados de saída
Primeira string: Hello! Segunda string: World A string conectada: Hello! World
No exemplo acima, criamos2duas strings chamadas greet e name.
Aqui, usamos o método concat() para conectar strings. Portanto, obtemos uma nova string chamada joinedString.
Em Java, também podemos usar + operadores para conectar duas strings.
class Main { public static void main(String[] args) { //Criar string String greet = "Hello! "; System.out.println("Primeira string: ") + greet); String name = "World"; System.out.println("Segunda string: ") + name); //Conectar duas strings String joinedString = greet + name; System.out.println("A string conectada: ") + joinedString); } }
Resultados de saída
Primeira string: Hello! Segunda string: World A string conectada: Hello! World
Aqui, usamos+operadores para conectar duas strings.
class Main { public static void main(String[] args) { //Criar a string s String first = "java programming"; String second = "java programming"; String third = "python programming"; //Comparar a primeira string com a segunda string boolean result1 = first.equals(second); System.out.println("A primeira e a segunda strings são iguais: ") + result1); //Comparar a primeira e a terceira strings boolean result2 = first.equals(third); System.out.println("A primeira e a terceira strings são iguais: ") + result2); } }
Resultados de saída
A primeira e a segunda strings são iguais: true A primeira e a terceira strings são iguais: false
No exemplo acima, usamos o método equals() para comparar os valores das duas strings.
Se duas strings forem iguais, o método retorna true, caso contrário, retorna false.
AtençãoPodemos usar o operador == e o método compareTo() para comparar2uma string.
class Main { public static void main(String[] args) { //Cria uma string usando a string literal String greet = "Hello! World"; System.out.println("A string é: "); + greet); //Retorna a posição3no caractere System.out.println("Posição3no caractere: " + greet.charAt(3)); //Retorna a posição7no caractere System.out.println("Posição7no caractere: " + greet.charAt(7)); } }
Resultados de saída
A string é: Hello! World Posição3no caractere: l Posição7no caractere: W
No exemplo acima, usamos o método charAt() para acessar o caractere em uma posição específica.
class Main { public static void main(String[] args) { //Cria uma string usando a palavra-chave new String example = new String("Hello! World"); //Retorna a substring World System.out.println("Usando subString(): "); + example.substring(7)); //Converte a string para minúsculas System.out.println("Usando toLowerCase(): "); + example.toLowerCase()); //Converte a string para maiúsculas System.out.println("Usando toUpperCase(): "); + example.toUpperCase()); //Substitua o caractere '!' pelo 'o' System.out.println("Usando replace(): "); + example.replace('!', 'o')); } }
Resultados de saída
Usando subString(): World Usando toLowerCase(): hello! world Usando toUpperCase(): HELLO! WORLD Usando replace(): Helloo World
No exemplo acima, usamos a palavra-chave new para criar uma string chamada example.
Aqui,
O método substring() retorna a string World
O método toLowerCase() converte uma string para minúsculas
O método toUpperCase() converte uma string para maiúsculas
Método replace() substitui o caractere '!' por 'o'.
As strings em Java são representadas porAspas duplasrepresentar.
//Criar string String example = "This is a string";
Agora, se quisermos incluirAspas duplas。Por exemplo,
//A string contém aspas duplas String example = "This is the "String" class";
Isso causará um erro. Isso é porque usamosAspas duplaspara representar strings. Portanto, o compilador considera "This is the " como uma string.
Para resolver esse problema, usamos caracteres de escape (\) em Java. Agora podemos incluirAspas duplas,como mostrado a seguir:
//Usar caracteres de escape String example = "This is the \"String\" class.";
Os caracteres de escape dizem ao compilador para escaparAspas duplasE leia todo o texto.
Em Java, criar uma string significa criar um objeto da classe string.Não podemos mudar a string ao criá-la em Java.É por isso que chamamos strings em Java deImutávelRazão.
Para entender melhor, vamos ver um exemplo:
//Criar string String example = "Hello!";
Aqui, criamos um objeto de string "Hello!". Após a criação, não poderemos mais mudá-lo.
Agora, suponhamos que queremos mudar a string.
//Adicionar outra string a essa string example = example.concat(" World");
Aqui, tentamos adicionar uma nova string à string anterior.
Devido às strings seremImutávelIsso deve causar um erro. Mas está tudo bem.
Parece que podemos mudar a string. Mas, na verdade, não é assim. Vamos ver o que realmente acontece aqui.
Temos uma string "Hello!" referenciada pela variável chamada example. Agora, ao executar o código acima,
O JVM aceita a string "Hello!"
Adicionar a string "World" a ela
Isso criará uma nova string "Hello! World"
A variável example agora aponta para a nova string
A string anterior "Hello!" permanece inalterada
Atenção:cada vez que criamos uma nova string e a referenciamos por uma variável.
Até agora, já criamos strings semelhantes às tipos básicos em Java. Mas, devido às strings em Java serem objetos, também podemos criá-las usando a palavra-chave new. Por exemplo,
//Criação de strings usando a palavra-chave new String name = new String("java string");
No exemplo acima, usamos a palavra-chave new e o construtor String() para criar uma string.
A classe String fornece várias outras funções de construtores para criar strings.
Agora, vamos ver como o processo de criação de strings é diferente do processo anterior.
Agora que sabemos como criar strings usando literais de string e a palavra-chave new, vamos ver o que são as principais diferenças entre eles.
No Java, o JVM mantém um pool de strings para armazenar todas as strings na memória. O pool de strings ajuda a reutilizar strings.
Ao criar strings usando textos de string, o valor da string é fornecido diretamente. Portanto, o compilador verifica primeiro o pool de strings para ver se a string já existe.
Se a string já existirnão é criada uma nova string. Em vez disso, a nova referência aponta para a string existente.
Se a string não existirentão é criada uma nova string.
No entanto, ao criar strings usando a palavra-chave new, não é fornecido diretamente o valor da string. Portanto, novas strings são sempre criadas.