Java Manipulação de String com EXAMPLE
O que são Strings em Java?
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 básico Java String é basicamente uma matriz de caracteres.
Então, minha string acima de “ROSE”pode ser representado da seguinte forma -
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 que 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 um Java programador, uma de suas principais ferramentas para armazenar e processar linguagem será a classe String.
Exemplos de sintaxe de string
Agora, vamos ver um pouco de sintaxe, afinal, precisamos escrever isso em Java código, não é?
String é uma matriz de caracteres, representada 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 nem sempre podemos escrever nossas strings como arrays; portanto, podemos definir a String em Java como se segue:
//Representation of String String strSample_2 = "ROSE";
Em termos técnicos, o acima é representado como:
= ;
O Classe String Java se estende da Classe de objeto.
Concatenação de Strings:
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, que explica os dois métodos para realizar a concatenação de strings.
Primeiro é usar “concat”Método 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); } }
Resultado esperado:
RockStar RockStar
importante Java métodos de string:
Vamos perguntar ao Java Faça algumas perguntas à classe e veja se ela pode respondê-las:
Método de “comprimento” de string
Como você determinará o comprimento de uma determinada String? Eu forneci um método chamado “comprimento“. Use-o na 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());}}
Resultado esperado:
Length of String: 8
Método String “indexOf”
Se eu souber o comprimento, como descobrirei qual caractere está em qual posição? Resumindo, como encontrarei o índice de um personagem?
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'));}}
Resultado esperado:
Character at position 5: t Index of character 'S': 4
Método String “charAt”
Semelhante à pergunta acima, dado o índice, como posso conhecer o personagem naquele local?
Simples de novo!! Use o "charAt”E forneça o índice cujo caracter 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));}}
Resultado esperado:
Character at position 5: t
Método String “CompareTo”
Quero verificar se a String que foi gerada por algum método é igual a algo que desejo verificar? Como posso comparar duas Strings?
Utilize o método “comparado a”E especifique a String que você gostaria de comparar.
Use “compareToIgnoreCase” caso não queira que o resultado diferencie maiúsculas de 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 sequência for lexicograficamente menor que o argumento da sequência; e um valor maior que 0 se esta sequência for lexicograficamente maior que o argumento da sequência.
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"));}}
Resultado esperado:
Compare To 'ROCKSTAR': -32 Compare To 'ROCKSTAR' - Case Ignored: 0
Método String “Conter”
Eu sei parcialmente o que a string deveria conter. Como posso confirmar se a String contém uma sequência de caracteres que eu especifico?
Utilize o método “contém”E especifique os caracteres que você precisa verificar.
Returns verdadeiro se e somente se esta 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"));}}
Resultado esperado:
Contains sequence 'tar': true
Método String “endsWith”
Como posso confirmar se uma String termina com um sufixo específico? Mais uma vez você respondeu. Use o método “endsWith” e especifique o sufixo nos argumentos.
Returns verdadeiro 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"));}}
Resultado esperado:
EndsWith character 'r': true
String “replaceAll” e método “replaceFirst”
Quero modificar minha String em vários lugares e substituir várias partes da String?
Java String Substituir, substituirAll e substituirPrimeiro métodos. 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"));}}
Resultado esperado:
Replace 'Rock' with 'Duke': DukeStar
Tanga Java “em minúsculas” & Java Método “maiúsculas”
Quero que toda a minha String seja mostrada em letras minúsculas ou maiúsculas?
Basta usar os métodos “toLowercase()” ou “ToUpperCase()” nas 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());}}
Resultado esperado:
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, os objetos String são chamados de imutáveis.
- O Java Máquina Virtual (JVM) cria um local de memória especialmente para Strings chamado Conjunto de Constantes de String. É por isso que String pode ser inicializado sem a palavra-chave 'new'.
- A classe String se enquadra Hierarquia java.lang.String. Mas não há necessidade de importar esta classe. Java plataforma os fornece automaticamente.
- Tanga a referência 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. Simplesmente perde o controle.
- Múltiplas referências pode ser usado para a mesma String, mas será ocorrem 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 o número é citado em ” “ então isso se torna uma corda, não é mais um número. Isso significa que se
String S1 =”O número é: “+ “123”+”456″;
Sistema.Fora.println(S1);
então será impresso: O número é: 123456
Se a inicialização for assim:
String S1 = “O número é: “+(123+456);
System.out.println(S1);
então será impresso: O número é: 579
Isso é tudo para Strings!