Manipulação de string Java: funções e métodos com EXEMPLO

Índice:

Anonim

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.

Portanto, minha string acima de " ROSE " pode ser representada da seguinte forma -

Neste tutorial, você aprenderá-

  • O que são Strings?
  • Por que usar Strings?
  • Exemplos de sintaxe de string
  • String Concatenation
  • Métodos de string Java importantes

Por que usar Strings?

Uma das funções principais 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 precisão de uma calculadora. Os diálogos de ajuda fornecem instruções. Os menus oferecem opções. E as exibições de dados mostram status, erros e alterações em tempo real no idioma.

Como um programador Java, uma de suas principais ferramentas para armazenar e processar a linguagem será a classe String.

Exemplos de sintaxe de string

Agora, vamos chegar a alguma sintaxe, afinal, precisamos escrever isso em código Java, não é?

String é uma matriz de caracteres, representada como:

//String is an array of characterschar[] 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 da seguinte maneira:

//Representation of StringString strSample_2 = "ROSE";

Em termos técnicos, o acima é representado como:

= ;

A classe String Java estende a classe Object.

Concatenação de strings:

Concatenação é a união de duas ou mais strings.

Dê uma olhada na imagem abaixo-

Temos duas cordas 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.

O primeiro é usar o método “ concat ” da classe String e o segundo é usar o operador aritmético “+”. Ambos resultam na mesma saída

public class Sample_String {public static void main (String [] args) {// String ConcatenationString str1 = "Pedra";String str2 = "Estrela";// Método 1: usando concatString str3 = str1.concat (str2);System.out.println (str3);// Método 2: Usando o operador "+"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 corda que você precisa para encontrar o comprimento.

public class Sample_String {public static void main (String [] args) {// Nosso exemplo de string para este tutorialString str_Sample = "RockStar";// Comprimento de uma stringSystem.out.println ("Comprimento da string: + str_Sample.length ());}}

resultado:

Length of String: 8

Método String "indexOf"

Se eu souber o comprimento, como posso descobrir qual personagem está em qual posição? Resumindo, como vou encontrar o índice de um personagem?

Você respondeu a si mesmo, amigo, há 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) {// Caractere na posiçãoString str_Sample = "RockStar";System.out.println ("Character at position 5: + str_Sample.charAt (5));// Índice de um determinado personagemSystem.out.println ("Índice do caractere 'S': + str_Sample.indexOf ('S'));}}

Resultado:

Character at position 5: tIndex of character 'S': 4

Método String "charAt"

Semelhante à pergunta acima, dado o índice, como posso saber o personagem naquele local?

Simples de novo !! 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) {// Caractere na posiçãoString str_Sample = "RockStar";System.out.println ("Character at position 5: + str_Sample.charAt (5));}}

Resultado:

Character at position 5: t

Método String "CompareTo"

Desejo verificar se a String gerada por algum método é igual a algo que desejo verificar? Como posso comparar duas Strings?

Use o método “compareTo” e especifique a String que deseja comparar.

Use “compareToIgnoreCase” caso 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 da string; e um valor maior que 0 se esta string for lexicograficamente maior que o argumento da string.

public class Sample_String {public static void main (String [] args) {// Compare com uma StringString str_Sample = "RockStar";System.out.println ("Comparar com 'ROCKSTAR': + str_Sample.compareTo ("rockstar"));// Comparar com - Ignorar maiúsculas e minúsculasSystem.out.println ("Comparar com 'ROCKSTAR' - Caso ignorado: + str_Sample.compareToIgnoreCase ("ROCKSTAR"));}}

Resultado:

Compare To 'ROCKSTAR': -32Compare To 'ROCKSTAR' - Case Ignored: 0

Método String "Contém"

Eu sei parcialmente o que a string deveria conter, como posso confirmar se a string contém uma sequência de caracteres que eu especificar?

Use o método “contém” e especifique os caracteres que você precisa verificar.

Retorna verdadeiro se e somente se esta string contém a seqüência especificada de valores char.
public class Sample_String {public static void main (String [] args) {// Verifique se String contém uma sequênciaString str_Sample = "RockStar";System.out.println ("Contém sequência 'tar': + str_Sample.contains ("tar"));}}

Resultado:

Contains sequence 'tar': true

Método String "endsWith"

Como posso 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 verdadeiro se a seqüência de caracteres representada pelo argumento for um sufixo da seqüência de caracteres representada por este objeto.
public class Sample_String {public static void main (String [] args) {// Verifique se termina com uma sequência específicaString str_Sample = "RockStar";System.out.println ("EndsWith character 'r': + str_Sample.endsWith ("r"));}}

Resultado:

EndsWith character 'r': true

Método de string "replaceAll" e "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) {// Substitua Rock pela palavra DukeString str_Sample = "RockStar";System.out.println ("Substitua 'Pedra' por 'Duque': + str_Sample.replace ("Pedra", "Duque"));}}

Resultado:

Replace 'Rock' with 'Duke': DukeStar

Método de string Java "tolowercase" e Java "touppercase"

Eu quero que toda a minha string 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) {// Converter para LowerCaseString str_Sample = "RockStar";System.out.println ("Converter para LowerCase: + str_Sample.toLowerCase ());// Converter para UpperCaseSystem.out.println ("Converter para UpperCase: + str_Sample.toUpperCase ());}}

Resultado:

Convert to LowerCase: rockstarConvert 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.
  • A Java Virtual Machine (JVM) cria um local de memória especialmente para Strings chamado String Constant Pool . É por isso que String pode ser inicializada sem a palavra-chave 'nova'.
  • 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 "olá" não é excluída. Ele simplesmente perde o controle.

  • Várias referências podem ser usadas para a mesma String, mas isso 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 aspas “” , ele se tornará uma string , não será mais um número. Isso significa que se

String S1 = "O número é: + "123" + "456";

Sistema. out .println (S1);

então ele irá imprimir: O número é: 123456

Se a inicialização for assim:

String S1 = "O número é: + (123 + 456);

Sistema. out .println (S1);

em seguida, ele imprimirá: O número é: 579 Isso é tudo para Strings!