Baixe o app para aproveitar ainda mais
Prévia do material em texto
Manipulação de Strings - Java • O Java não tem um tipo primitivo String, mas oferece uma classe chamada String, que implementa métodos para manipulação de Strings. • Assim, o tipo de dados String (com S maiúsculo) é uma instância da classe, que podem ser declaradas de duas formas: Declaração de Strings • como variáveis normais: – String varStr; //Declara a variável e não inicializa – String varStr = “Olá!” //Declara a variável e inicializa com o conteúdo Olá! Declaração de Strings • com construtores (um construtor especifica como um objeto deve ser inicializado): – String varStr = new String(); //Declara a variável e instancia uma String vazia – String varStr = new String(“Olá!”); //Declara a variável e instancia uma String com o conteúdo Olá!. Observação • É importante se atentar para o fato de que, em Java, Strings são objetos imutáveis. • Assim, mesmo passando para o método a referência para uma String, alterar a variável no método NÃO irá alterar o valor da String referenciada. • Isso significa que, apesar de ser um objeto, ao se passar String para o método o comportamento é o de passagem por valor e não por referência. length() • Sintaxe: int variavel = varStr.length(); • Retorna o número de caracteres de uma String. • Exemplo: int tamanho = varStr.lenght(); //tamanho é uma variável do tipo int charAt() • Sintaxe: char variavel = varStr.charAt(int pos); • Retorna o caractere (código unicode) de uma String em uma posição (pos) específica. • Exemplo: char caractere = varStr.charAt(2); equals() • Sintaxe: boolean variavel = varStr.equals(String varStr2); • Verifica o conteúdo de duas Strings quanto à igualdade de conteúdo. Se as duas Strings tiverem o mesmo conteúdo retorna true, senão retorna false. Nesse método, letras maiúsculas e minúsculas são consideradas diferentes. • Exemplo: if (varStr.equals(varStr2)) { System.out.println(“As Strings são iguais!”); } equals() • Obs: O conteúdo de duas Strings não pode ser verificado diretamente com a utilização do operador ==, pois o mesmo irá comparar as referências (o endereço de memória) dos objetos e não seu conteúdo. equalsIgnoreCase() • Sintaxe: boolean variavel = varStr.equalsIgnoreCase(String varStr2); • Mesma finalidade do método equals(), porém ignora as variações entre maiúsculas e minúsculas. • Exemplo: if (varStr.equalsIgnoreCase(varStr2)) { System.out.println(“As Strings são iguais!”); } toUpperCase() • Sintaxe: String variavel = varStr.toUpperCase(); • Retorna uma nova String convertendo todos os caracteres em minúsculo da String original para maiúsculo. • Exemplo: String str = "Teste"; String novaString = str. toUpperCase(); System.out.println(novaString); • Saída (impressão): TESTE toUpperCase() Sintaxe: String variavel = varStr.toUpperCase(); • Retorna uma nova String convertendo todos os caracteres em minúsculo da String original para maiúsculo. • Exemplo: String str = "Teste"; String novaString = str. toUpperCase(); System.out.println(novaString); • Saída (impressão): TESTE toLowerCase() • Sintaxe: String variavel = varStr. toLowerCase(); • Retorna uma nova String convertendo todos os caracteres em maiúsculo da String original para minúsculo. • Exemplo: String str = "Teste"; String novaString = str.toLowerCase(); System.out.println(novaString); • Saída (impressão): teste concat() • Sintaxe: String str3 = str1.concat(str2); • Gera e retorna uma nova String (str3) com a junção do conteúdo das duas outras Strings (str1 + str2). • Exemplo: String str1 = "Olá!"; String str2 = " Bom Dia…"; String str3 = str1.concat(str2); System.out.println(str3); • Saída (impressão): Olá! Bom Dia... replace() • Sintaxe 1: String variavel = str.replace(char oldChar, char newChar); • Substitui todas as ocorrências de oldChar por newChar (substitui um caractere por outro) e retorna a nova String modificada. • Exemplo: String str = "fofoca"; String novaString = str.replace('o', 'O'); • Resultado (conteúdo recebido por novaString): fOfOca replace() • Sintaxe 2: String variavel = str.replace(String oldStr, String newStr); • Substitui todas as ocorrências de oldStr por newStr (substitui uma String (sequência de caractere) por outra) e retorna a nova String modificada. • Exemplo: String str = "Fui pra casa pra dormir"; String novaString = str.replace("pra", "para"); System.out.println(novaString); • Resultado (conteúdo recebido por novaString): Fui para casa para dormir contains() • Sintaxe: boolean contem = str.contains(str2); • Verifica se uma String está dentro de outra; Retorna true se contiver e false se não contiver. contains() String str = "Ilha do bananal!"; boolean contem = str.contains("bananal"); if (contem){ System.out.println("Contém string!"); } else{ System.out.println("Não contém string!"); } • Saída (impressão): Contém string! contains() String str = "Ilha do bananal!"; if (str.contains("bananal"){ System.out.println("Contém string!"); } else{ System.out.println("Não contém string!"); } • Saída (impressão): Contém string! contains() if ("Ilha do bananal".contains("bananal"){ System.out.println("Contém string!"); } else{ System.out.println("Não contém string!"); } • Saída (impressão): Contém string! substring() • Sintaxe 1: String variavel = str.substring(int beginIndex); • Retorna uma nova String, copiando um trecho indicado de uma String específica. Neste caso, da posição (beginIndex) até o fim da String. • Exemplo: String str = "Pipoca"; String novaString = str.substring(3); • Resultado (conteúdo recebido por novaString): oca substring() • Sintaxe 2: String variavel = str2.substring(int beginIndex, int endIndex); • Retorna uma nova String, copiando um trecho indicado de um String específico. Neste caso, da posição (beginIndex) até a posição (endIndex – 1) ou seja, beginIndex inclusive e endIndex exclusive. • Exemplo: String str = "Pipoca"; String novaString = str.substring(0,3); • Resultado (conteúdo recebido por novaString): Pip startsWith() • Sintaxe: boolean variavel = str.startsWith(String str2); • Retorna true se a String str inicia com a String str2 e false em caso contrário. • Exemplo: String str = "Teste de novos programas!"; if (str.startsWith("Teste”)){ System.out.println("A String começa com Teste"); } endsWith() • Sintaxe: boolean variavel = str.endsWith(String str2); • Retorna true se a String str terminar com a String str2 e false em caso contrário. • Exemplo: String str = "Teste de novos programas!"; if (str.endsWith("programas!”)){ System.out.println("A String termina com programas!"); } indexOf() • Sintaxe 1: int variavel = str.indexOf(char caractere); • Retorna a posição da primeira ocorrência de um caractere numa String; Retorna um valor inteiro com a posição do caractere ou -1 caso o caractere não exista no String. • Exemplo: String str = "Cabeça!"; int posicao = str.indexOf('a'); • Resultado (conteúdo recebido por posicao): 1 indexOf() • Sintaxe 2: int variavel = str2.indexOf(char caractere, int deOnde); • Retorna a posição da primeira ocorrência de um caractere numa String a partirda posição especificada no segundo argumento (deOnde). Retorna um valor inteiro com a posição do caractere ou -1 caso o caractere não exista no String. • Exemplo: String str = "Cabeça!"; int posicao = str.indexOf('a', 3); • Resultado: 5 indexOf() • Sintaxe 3: int variavel = str1.indexOf(String str2); • Retorna a posição do primeiro caractere da primeira ocorrência de uma String numa outra String. Também pode se passar um segundo argumento de onde iniciar a pesquisa. • Exemplo: String str = "cotoco!"; int posicao = str.indexOf("co"); • Resultado: 0 indexOf() • Sintaxe 4: int variavel = str2.indexOf(String str1, int deOnde); • Retorna a posição do primeiro caractere da primeira ocorrência de uma String numa outra String a partir da posição especificada no segundo argumento (deOnde). Retorna um valor inteiro com a posição do caractere ou -1 caso a String não exista no String. • Exemplo: String str = "cotoco!"; int posicao = str.indexOf("co",2); • Resultado: 4 lastIndexOf() • Semelhante ao indexOf(), mas retorna a posição da última ocorrência de um caractere ou String em uma String. compareTo() • int variavel = str2.compareTo(String str1); • Compara duas Strings e apresenta um dos seguintes retornos: – 0 (zero) se as duas strings forem iguais; – um número negativo se a String que chama o método for menor (vier antes no alfabeto) que a String passado como parâmetro; – um número positivo se a String que chama o método for maior (vier depois no alfabeto) que a String que for passado como parâmetro. compareTo() • Exemplo: String str1 = "Ana"; String str2 = "João"; int retorno = str1.compareTo(str2); • Resultado (conteúdo recebido por retorno): -9 compareToIgnoreCase() • Mesma finalidade e sintaxe do método compareTo(), porém ignora as variações entre maiúsculas e minúsculas. trim() • Sintaxe: String str2 = str.trim(); • Retorna uma nova String eliminando todos os espaços à direita e à esquerda da String original. • Exemplo: String str = " Teste de novos programas! "; str = str.trim(); System.out.println(str); • Saída (impressão): Teste de novos programas! sem espaços antes e depois.
Compartilhar