Manipulação de String Java:Funções e Métodos com EXEMPLO
O que são Strings?
Uma string em termos literais é uma série de caracteres. Ei, você disse caracteres, não é um tipo de dados primitivo em Java. Sim, então em termos técnicos, o Java String básico é basicamente um array de caracteres.
Então, minha string acima de “ROSE ” pode ser representado da seguinte forma –
Neste tutorial, você aprenderá-
- O que são strings?
- Por que usar strings?
- Exemplos de sintaxe de string
- Concatenação de strings
- Métodos de string Java importantes
Por que usar Strings?
Uma das principais funções da ciência da computação moderna é o processamento da linguagem humana.
Da mesma forma que os números são importantes para a matemática, os símbolos da linguagem são importantes para o significado e a tomada de decisões. Embora possa não ser visível para os usuários de computador, os computadores processam a linguagem em segundo plano com a mesma precisão e exatidão de uma calculadora. As caixas de diálogo de ajuda fornecem instruções. Os menus fornecem opções. E as exibições de dados mostram status, erros e alterações em tempo real no idioma.
Como programador Java, uma de suas principais ferramentas para armazenamento e processamento de linguagem será a classe String.
Exemplos de sintaxe de string
Agora, vamos a alguma sintaxe, afinal, precisamos escrever isso em código Java, não é?
String é um array de caracteres, representado como:
//String is an array of characters char[] arrSample = {'R', 'O', 'S', 'E'}; String strSample_1 = new String (arrSample);
Em termos técnicos, a String é definida como segue no exemplo acima-
= new (argument);
Agora, sempre não podemos escrever nossas strings como arrays; portanto, podemos definir a String em Java da seguinte forma:
//Representation of String String strSample_2 = "ROSE";
Em termos técnicos, o acima é representado como:
= ;
A classe de string Java estende a classe de objeto.
Concatenação de strings:
A concatenação é a união de duas ou mais strings.
Dê uma olhada na imagem abaixo-
Temos duas strings str1 =“Rock” e str2 =“Star”
Se somarmos essas duas strings, devemos ter um resultado como str3=“RockStar”.
Verifique o trecho de código abaixo e ele explica os dois métodos para realizar a concatenação de strings.
A primeira é usar “concat ” da classe String e o segundo está usando o operador aritmético “+”. Ambos resultam na mesma saída
public class Sample_String{ public static void main(String[] args){ //String Concatenation String str1 = "Rock"; String str2 = "Star"; //Method 1 : Using concat String str3 = str1.concat(str2); System.out.println(str3); //Method 2 : Using "+" operator String str4 = str1 + str2; System.out.println(str4); } }
Métodos de string Java importantes:
Vamos fazer algumas perguntas à classe Java String e ver se ela pode respondê-las:
Método de "Comprimento" da String
Como você determinará o comprimento de determinada String? Eu forneci um método chamado "comprimento". Use-o contra a String que você precisa para encontrar o comprimento.
public class Sample_String{ public static void main(String[] args){ //Our sample string for this tutorial String str_Sample = "RockStar"; //Length of a String System.out.println("Length of String: " + str_Sample.length());}}
saída:
Length of String: 8
Método "indexOf" de string
Se eu souber o comprimento, como encontrarei qual caractere está em qual posição? Em resumo, como encontrarei o índice de um caractere?
Você mesmo respondeu, amigo, existe um método “indexOf” que o ajudará a determinar a localização de um caractere específico que você especificar.
public class Sample_String{ public static void main(String[] args){//Character at position String str_Sample = "RockStar"; System.out.println("Character at position 5: " + str_Sample.charAt(5)); //Index of a given character System.out.println("Index of character 'S': " + str_Sample.indexOf('S'));}}
Saída:
Character at position 5: t Index of character 'S': 4
Método de string "charAt"
Semelhante à pergunta acima, dado o índice, como eu conheço o personagem naquele local?
Simples novamente!! Use o método “charAt” e forneça o índice cujo caractere você precisa encontrar.
public class Sample_String{ public static void main(String[] args){//Character at position String str_Sample = "RockStar"; System.out.println("Character at position 5: " + str_Sample.charAt(5));}}
Saída:
Character at position 5: t
Método “CompareTo” de String
Eu quero verificar se a String que foi gerada por algum método é igual a algo que eu quero verificar? Como comparar duas Strings?
Use o método “compareTo” e especifique a String que deseja comparar.
Use “compareToIgnoreCase” caso você não queira que o resultado faça distinção entre maiúsculas e minúsculas.
O resultado terá o valor 0 se a string do argumento for igual a esta string; um valor menor que 0 se esta string for lexicograficamente menor que o argumento string; e um valor maior que 0 se essa string for lexicograficamente maior que o argumento string.
public class Sample_String{ public static void main(String[] args){//Compare to a String String str_Sample = "RockStar"; System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar")); //Compare to - Ignore case System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}
Saída:
Compare To 'ROCKSTAR': -32 Compare To 'ROCKSTAR' - Case Ignored: 0
Método "Conter" de String
Eu sei parcialmente o que a string deveria conter, como faço para confirmar se a String contém uma sequência de caracteres que eu especifico?
Use o método “contém” e especifique os caracteres que você precisa verificar.
Retorna true se e somente se essa string contiver a sequência especificada de valores char.
public class Sample_String{ public static void main(String[] args){ //Check if String contains a sequence String str_Sample = "RockStar"; System.out.println("Contains sequence 'tar': " + str_Sample.contains("tar"));}}
Saída:
Contains sequence 'tar': true
Método de string "endsWith"
Como faço para confirmar se uma String termina com um sufixo específico? Novamente você respondeu. Use o método “endsWith” e especifique o sufixo nos argumentos.
Retorna true se a sequência de caracteres representada pelo argumento for um sufixo da sequência de caracteres representada por este objeto.
public class Sample_String{ public static void main(String[] args){ //Check if ends with a particular sequence String str_Sample = "RockStar"; System.out.println("EndsWith character 'r': " + str_Sample.endsWith("r"));}}
Saída:
EndsWith character 'r': true
String "replaceAll" e método "replaceFirst"
Eu quero modificar minha String em vários lugares e substituir várias partes da String?
Métodos Java String Replace, replaceAll e replaceFirst. Você pode especificar a parte da String que deseja substituir e a String de substituição nos argumentos.
public class Sample_String{ public static void main(String[] args){//Replace Rock with the word Duke String str_Sample = "RockStar"; System.out.println("Replace 'Rock' with 'Duke': " + str_Sample.replace("Rock", "Duke"));}}
Saída:
Replace 'Rock' with 'Duke': DukeStar
String Java “tolowercase” e método Java “touppercase”
Eu quero que minha String inteira seja mostrada em letras minúsculas ou maiúsculas?
Basta usar os métodos “toLowercase()” ou “ToUpperCase()” contra as Strings que precisam ser convertidas.
public class Sample_String{ public static void main(String[] args){//Convert to LowerCase String str_Sample = "RockStar"; System.out.println("Convert to LowerCase: " + str_Sample.toLowerCase()); //Convert to UpperCase System.out.println("Convert to UpperCase: " + str_Sample.toUpperCase());}}
Saída:
Convert to LowerCase: rockstar Convert to UpperCase: ROCKSTAR
Pontos importantes a serem observados:
- String é uma classe final; ou seja, uma vez criado o valor não pode ser alterado. Assim, objetos String são chamados de imutáveis.
- A Java Virtual Machine (JVM) cria um local de memória especialmente para Strings chamado String Constant Pool . É por isso que String pode ser inicializado sem a palavra-chave 'new'.
- A classe String se enquadra na hierarquia java.lang.String . Mas não há necessidade de importar esta classe. A plataforma Java os fornece automaticamente.
- A referência de string pode ser substituída, mas isso não exclui o conteúdo; ou seja, se
String h1 =“olá”;
h1 =“olá”+”mundo”;
então a string “hello” não é excluída. Ele simplesmente perde o controle.
- Várias referências pode ser usado para a mesma String, mas ocorrerá no mesmo lugar; ou seja, se
String h1 =“olá”;
String h2 =“olá”;
String h3 =“olá”;
então apenas um pool para String “hello” é criado na memória com 3 referências-h1,h2,h3
- Se um número estiver entre ” “ então ele se torna uma string , não é mais um número. Isso significa que se
String S1 =”O número é:“+ “123”+”456″;
Sistema.saída .println(S1);
então será impresso:O número é:123456
Se a inicialização for assim:
String S1 =“O número é:“+(123+456);
Sistema.saída .println(S1);
então será impresso:O número é:579
Isso é tudo para Strings!
Java
- Classe abstrata Java e métodos abstratos
- Método String Length () em Java:como encontrar com exemplo
- Método Java String indexOf() com substring e exemplos
- Método Java String charAt() com exemplo
- Método Java String compareTo():como usar com exemplos
- String Java contém() Método | Verificar substring com exemplo
- Java String EndsWith() Método com Exemplo
- Java String replace(), replaceAll() e método replaceFirst()
- Métodos Java String toLowercase() e toUpperCase()
- Java BufferedReader:Como Ler Arquivo em Java com Exemplo