Você está na página 1de 13

Manipulando Strings

Declarando Strings
• String (ou cadeia de caracteres)
Todos os tipos utilizados na linguagem Java, com exceção
dos tipos primitivos (int, double, char e boolean), são
"objetos". O tipo String, com S maiúsculo, é um dos
objetos mais utilizados.
• Ao contrário que ocorre em C e C++, strings em Java não
são tratadas como sequências de caracteres terminadas
por NULL.
• São objetos ou instâncias da classe java.lang.String, portanto,
devem ser declarados e instanciados.
Exemplo
class Matriz
{
public static void main(String[] args)
{
String ola;
// instanciação
ola = new String(Alô Mundo Java !");
// declaração e instanciação (mais prático)
String ola = "Alô Mundo Java !";
String nome = “Sidney";
// concatenação (\n = pula linha)
String aula = ola + "\n" + nome;
System.out.println(aula);
}
}
Exemplo
public class String1 {
public static void main(String[] args) {
int i;
// o especificador de formato para caractere (%c)
// mostra o i-ésimo caractere da tabela ASCII
System.out.printf("Caracteres numéricos:\n");
for (i=48; i<=57; i++) {
System.out.printf("%c", i);
}
System.out.printf("\n\nCaracteres alfabéticos maiúsculos:\n");
for (i=65; i<=90; i++) {
System.out.printf("%c", i);
}
System.out.printf("\n\nCaracteres alfabéticos minúsculos:\n");
for (i=97; i<=122; i++) {
System.out.printf("%c", i);
}
System.out.printf("\n");
}
}
Fornecendo Strings como
Entrada
• Para obter uma String deve-se utilizar o método
"nextLine" da classe Scanner.
import java.util.Scanner;
public class String3 {
public static void main(String[] args) {
Scanner ler = new Scanner(System.in);
String nome;
System.out.printf("Informe um nome:\n");
nome = ler.nextLine();
}
}
Métodos da Classe String
• char charAt(int i)
• Retorna o i-ésimo caractere da string. Obs: assim como nos
vetores a posição do primeiro caractere de uma string é igual a 0
(zero).
• String concat(String s)
• Retorna uma string com os caracteres deste objeto concatenados
(no final) com os caracteres do argumento "s".
• boolean contains(String s)
• Retorna verdadeiro se a sequência de caracteres do argumento
"s" existe no objeto e falso caso contrário
• boolean equal(String s)
• Retorna true se as strings forem "exatamente" iguais
Métodos da Classe String
• boolean equalIgnoreCase(String s)
• Retorna true se as strings forem iguais (ignorando na comparação
se os caracteres são maiúsculos ou minúsculos).
• int indexOf(int ch)
• Retorna o índice dentro da sequência de caracteres da primeira
ocorrência do caractere especificado (ch). O valor -1 como
retorno indica que não existe uma ocorrência. Os índices
começam em ZERO.
• Int indexOf(String s)
• Retorna o índice dentro da sequência de caracteres da primeira
ocorrência da substring especificada (s). O valor -1 como retorno
indica que não existe uma ocorrência.
Métodos da Classe String
• int lastIndexOf(int ch)
• Retorna o índice dentro da sequência de caracteres da última
ocorrência do caractere especificado (ch). O valor -1 como
retorno indica que não existe uma ocorrência.
• int lastIndexOf(String s)
• Retorna o índice dentro da sequência de caracteres da última
ocorrência da substring especificada (s). O valor -1 como retorno
indica que não existe uma ocorrência.
• Int length()
• Retorna o tamanho da string, ou seja, a quantidade de caracteres
da string.
• String toLowerCase()
• Retorna a string com os caracteres convertidos em "minúsculos".
Métodos da Classe String
• String toUpperCase()
• Retorna a string com os caracteres convertidos em "maiúsculas".
• String trim()
• Retorna a string com os espaços em branco do início e do final da
cadeia removidos.
• String replace(char oldChar, char newChar)
• Retorna a string resultante da troca de "todas" as ocorrências do
caractere "oldChar" pelo caractere "newChar".
• String substring(int ini, int fim)
• Retorna a "substring" da string definida a partir da posição "ini"
até a posição "fim-1".
Métodos da Classe String
• static String valueOf(double d)
• Retorna a representação string do argumento double.
• static String valueOf(float d)
• Retorna a representação string do argumento float.
• static String valueOf(int d)
• Retorna a representação string do argumento int.
• static String valueOf(long d)
• Retorna a representação string do argumento long.
Exemplo
import java.util.Scanner;
public class StringTest {
public static void main(String[] args) {
Scanner ler = new Scanner(System.in);
String s, maius, minus;

System.out.printf("Informe uma string:\n");


s = ler.nextLine();

maius = s.toUpperCase(); //string convertida em maiúsculas


minus = s.toLowerCase(); //string convertida em minúsculas
System.out.println("Resultado:");
System.out.println(“Maiúsculas:“+maius);
System.out.println(“Minúsculas:“+minus);
}
}
Exemplo
import java.util.Scanner;
public class StringTest {
public static void main(String[] args) {
Scanner ler = new Scanner(System.in);
String s;
int i, j, n;
while (true) {
System.out.println("Informe uma String, FIM para encerrar:\n");
s = ler.nextLine();
if (s.equalsIgnoreCase("FIM"))
break;
System.out.println(“Número de caracteres:", s.length());
}
}
}
Exercícios
• Implemente em Java
• Programa que receba um texto como entrada e:
• Converta o mesmo para maiúsculas e minúsculas
• Informe o número de caracteres do texto
• Substitua todas as ocorrências da letra “X” dentro de texto pelo
caractere “@”
• Informe se uma determinada palavra também fornecida como
entrada pelo usuário ocorre dentro do texto
• Solicite que o usuário forneça um novo texto e o concatene no final
do texto inicial
• Solicite que o usuário forneça um novo texto e verifique e informe se
o mesmo é igual ao texto inicial

Você também pode gostar