100% acharam este documento útil (3 votos)
121 visualizações10 páginas

Manipulação de Strings em Java

O documento discute a manipulação de strings em Java, incluindo métodos úteis da classe String como tamanho, charAt e concatenação, além de métodos de comparação, transformação e conversão de tipos. Também apresenta a classe StringBuffer para manipulação modificável de strings.

Enviado por

Roosewelt
Direitos autorais
© Attribution Non-Commercial (BY-NC)
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPT, PDF, TXT ou leia on-line no Scribd
100% acharam este documento útil (3 votos)
121 visualizações10 páginas

Manipulação de Strings em Java

O documento discute a manipulação de strings em Java, incluindo métodos úteis da classe String como tamanho, charAt e concatenação, além de métodos de comparação, transformação e conversão de tipos. Também apresenta a classe StringBuffer para manipulação modificável de strings.

Enviado por

Roosewelt
Direitos autorais
© Attribution Non-Commercial (BY-NC)
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPT, PDF, TXT ou leia on-line no Scribd

Introdução à Programação

Um enfoque orientado a construção de


modelos em programas baseados em objetos

Gustavo Motta
Departamento de Informática - UFPB
8. Manipulação de Strings
► A classe String
 Usada para representação e manipulação seqüências de
caracteres
► Inclui métodos úteis para úteis para processamento de textos
 Tamanho do string, i. e., a quantidade de caracteres armazenados
 Caractere existente numa dada posição do string
► “Java”.lenght()  4
► “Java”.charAt(0)  ‘J’
► “Java”.charAt(2)  ‘v’
► “Java”.charAt(4)  [Link]

► “Java“.toCharArray()  {‘J’,‘a’,’v’,’a’}
► Construção de instâncias da classe String
 String curso = “Ciência da Computação”;
 String curso = new String(“Ciência da Computação”);
 char[] caracteres = {‘C’,‘i’,’ê’,’n’,’c’,’i’,’a’,’ ’,
(C) 2008 Gustavo Motta 2
’d’,’a’,’ ’,’C’,’o’,’m’,’p’,’u’,’t’,’a’,’ç’,’ã’,’o’};
8. Manipulação de Strings
► A classe String
 Exemplo – Jogo da Forca
► 1. Inicializa-se um string com palavra a ser adivinhada e cria-se
um array de booleanos, cada posição correspondendo a um
caractere da palavra, inicializada com false, para indicar que
nenhum caractere foi adivinhado. Inicializa-se um array de 26
posições booleanas para indicar as letras que já foram
utilizadas
► 2. Mostra-se para o usuário quais letras já foram adivinhadas e
quais letras já foram utilizadas
► 3. Pede-se para o usuário entrar com uma letra, que é incluída
no rol das letras usadas e marca-se a letra nas posições
correspondentes da palavra a ser adivinhada, se pertinente
(C) 2008 Gustavo Motta 3
► Caso todas as letras da palavra tenha sido adivinhada, então o
8. Manipulação de Strings

► A classe String
 Métodos para comparação de string
► Strings não devem ser comparados com == – por que?
 String curso = “Computação”;
 “Computação”.equals(curso)  true
 “computação”.equals(curso)  false
 [Link](“Computação”)  true
 [Link](“Comuptação”)  false
 [Link](curso)  true
 “Computação”.equalsIgnoreCase(curso)  true
 “cOmPutaÇãO”.equalsIgnoreCase(curso)  true
 [Link](“cOmPutaÇãO”)  true
 [Link](“cOmPutaÇã”)  false
(C) 2008 Gustavo Motta 4
 [Link](curso)  true
8. Manipulação de Strings

► A classe String
 Métodos para comparação de strings
► Considerando apenas o início ou o fim do string
 String curso = “Computação”;
 [Link](“Comp”)  true
 [Link](“comp”)  false
 [Link](“Computação”)  true
 [Link](“Computaçãoo”)  false
 [Link](“”)  true
 [Link](“ação”)  true
 [Link](“Ação”)  false
 [Link](“Computação”)  true
 [Link](“Computaçãoo”)  false
(C) 2008 Gustavo Motta 5
 [Link](“”)  true
8. Manipulação de Strings

► A classe String
 Métodos para procura de substrings

► Verificar se um string contém outro string


 String curso = “Computação”;

 [Link](“ação”)  6

 [Link](“o”)  1

 [Link](“uta”)  4

 [Link](“cação”)  -1

 [Link](“”)  0

 [Link](“Comp”)  0
(C) 2008 Gustavo Motta 6
8. Manipulação de Strings
► A classe String
 Métodos para transformação de strings
► String em Java são imutáveis
 A “modificação” de um string é, de fato, a criação de um novo
string, numa versão transformado do string anterior
► String curso = “Computação ”;
Os métodos de de processamento de string podem ser combinados
► curso = “ Ciência da ”.concat(curso);
curso = “ Ciência da ”.concat(curso);
► [Link]()  “ ciência da computação ”
[Link]().trim().substring( 12DA
► [Link]()  “ CIÊNCIA )  “OMPUTAÇÃO”
COMPUTAÇÃO ”
► [Link]()  “Ciência da Computação”
► [Link](‘ ’, ‘-’)  “-Ciência-da-Computação-”
► [Link](12)  “Computação ”
► [Link](12, 16)  “Comp”
► [Link](16, 12)  [Link]

► [Link](16,
[Link](16, [Link]())(C) [Link]
2008 Gustavo Motta 7
8. Manipulação de Strings
► A classe String
 Métodos para conversão de tipos com strings
► Converte valores de tipos nativos para strings e vice-versa
 Tipos nativos para String
► [Link](10)  “10”
► [Link](15.4)  “15.4”
► [Link](‘v’)  “v”
► char[] carac = {'J', 'a', 'v', 'a'};
[Link](carac)  “Java”;

 String para tipos Nativos


► [Link](“10”)  10
► [Link](“3.2383”)  3.2383
► [Link](“10.33”) 
[Link]
► [Link](“3.2a383”)
(C) 2008 Gustavo Motta  8

[Link]
8. Manipulação de Strings
► A classe StringBuffer
 Permite criação e manipulação de strings modificáveis
► Lembre que instância da classe String são imutáveis
 A criação de instâncias de StringBuffer é mais custosa
que a criação de instâncias da classe String, porém a
manipulação é bem mais eficiente
 Instâncias da classe StringBuffer têm duas variáveis de
instância do tipo inteiro associadas
► Uma para indicar o comprimento do string, isto é, a quantidade
de caracteres armazenados num dados momento
► Outra para indicar a capacidade, que corresponde ao número
máximo de caracteres que podem ser armazenados pela
instância num dado momento
(C) 2008 Gustavo Motta 9

 A capacidade pode ser expandida automática ou manualmente


8. Manipulação de Strings
► A classe StringBuffer
 StringBuffer str = new StringBuffer(50);
 StringBuffer str = new StringBuffer(“Java”);
 [Link](‘ ’); [Link](“Language ”);
 [Link](10);
 [Link](str);  Java Language 10
 [Link](14, “é ”);
 [Link](str);  Java Language é 10
 [Link](5, 13);
 [Link](str);  Java é 10
 [Link]();
(C) 2008 Gustavo Motta 10

 [Link](str);  01 é avaJ

Você também pode gostar