A classe String.

Slides:



Advertisements
Apresentações semelhantes
Introdução à Programação Um enfoque orientado a construção de modelos em programas baseados em objetos Gustavo Motta Departamento de Informática - UFPB.
Advertisements

Tratamento de exceções em Java Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de.
CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)
Linguagem de Programação – Aula 03 Prof. Me. Ronnison Reges Vidal.
Princípios de Desenvolvimento de Algoritmos MAC122 Prof. Dr. Paulo Miranda IME-USP Variáveis e Atribuições.
COLETA DO QUADRO RESUMO - VENCE 1º SEMESTRE. INFORMAÇÕES IMPORTANTES A escola deve informar No caso do Programa Vence, a classe é considerada como educação.
Estruturas de Repetição
Introdução à Computação para Engenharia MAC2166
Cadastro de Profissional Escolar em Sala de Aula Censo Escolar 2017
Cadastro de Profissional Escolar em Sala de Aula Censo Escolar 2016
Cadastro de Profissional Escolar em Sala de Aula Censo Escolar 2017
Algoritmo e Lógica Programação Vetores e Matrizes
Algoritmo e Lógica Programação Modularização: Funções e Subalgoritmos
Recursividade, Entrada pelo teclado e Funções com retorno
Algoritmos e Estruturas de Dados I
Parei aqui!!! Forneça três números, os possíveis lados de um triângulo, e imprimir a classificação de acordo com tamanho.
Aluno: Rafael Angelo Gardini Orientador: Antonio Carlos Tavares
Estruturas de Repetição
ACESSE: Acesse o site do SENAI e clique no link “Trabalhe Conosco”, em seguida clicar em CANDIDATE-SE.
3.1 Classes e Objetos Em um programa orientado a objetos normalmente existem vários objetos de um mesmo tipo. Por exemplo, um programa de controle de.
TQS - Teste e Qualidade de Software (Software Testing and Quality) Caso de estudo: Problema da procura duma string num.
Prof. Wellington Franco Estrutura de um Programa Usando o VisuAlg
Prof. Wellington Franco
FUNDAMENTO DE PROGRAMAÇÃO
Estruturas de Dados Vetores.
Algoritmos e Técnicas CEFET/RN.
FUNDAMENTO DE PROGRAMAÇÃO
Cadastro de Funcionário
Introdução à Programação
Programação Orientada a Objetos
CES-11 ALGORITMOS E ESTRUTURAS DE DADOS
Programação Orientada a Objetos
Algoritmos e Programação MC102
Funções do Usuário em Matlab
Elaborando as Interfaces Aulas 37, 38 e 39.
Remote Method Invocation
Wrappers.
Programação Orientada a Objetos*
Relembrando... Variáveis : endereçam uma posição de memória que contem um determinado valor dependendo do seu tipo (char, int, float, double, ...) void.
Profa. Maria Augusta Constante Puget
LÓGICA DE PROGRAMAÇÃO Estruturas de Decisão
Programação Orientada a Objetos*
Rosemary Silveira Filgueiras Melo
EDA - Prof. Paulemir Campos
DHD – Desenvolvimento em Hardware
Projeto 1: Game Genius usando AppInventor®
Algoritmos Prof.: Carlos Alberto
Laboratório I Mateus Raeder.
Laboratório I Mateus Raeder.
Compiladores, Aula Nº 5 João M. P. Cardoso
Filas Prof. Kariston Pereira
Laboratório I Mateus Raeder.
DHD – Desenvolvimento em Hardware
Rosemary Silveira Filgueiras Melo
Computação Eletrônica Funções e Escopo de Variáveis
Arrays de caracteres: strings
ALGORITMOS.
DHD – Desenvolvimento em Hardware
Tipos Primitivos de Dados
Python: Comandos Básicos
Vetores.
CALCULADORA CARACTERE E VARIÁVEIS COMPOSTAS OU VETORES EM JAVA
Programação Orientada a Objetos
Introdução a progrmação Comandos condicionais: if e switch
Ponteiros.
Constantes, Variáveis e Memória
RESULUÇÃO DOS EXERCÍCIOS E
JAVA - BÁSICO COL. ESTADUAL MARIA AGUIAR TEIXEIRA
Aula 10 Professores: Conteúdo: Dante Corbucci Filho
Aula 3 Professores: Conteúdo: Dante Corbucci Filho
Transcrição da apresentação:

A classe String

Nas aulas anteriores... O pacote java.lang: Object Class getClass() toString() equals() Class getName()

O package java.lang : String Em java, valores literais são implementados como objetos da classe String. Esta classe possui 7 (sete!) construtores e 40 (quarenta!) métodos. Entretanto, os contratos destes métodos são simples e intuitivos.

O package java.lang : String Como strings são objetos, só se pode operar nos mesmos através de métodos apropriados, isto é, não se pode alterá-los após criados. Um objeto da classe String é intrinsicamente final, isto é, uma vez instanciado, ele possui um valor (a cadeia de caracteres) que não pode mais ser alterado. Quer dizer que uma instância de String simplesmente encapsula um literal final String.

O package java.lang : String Declarando uma String: // Declaração e inicialização com ‘Um texto qualquer’ String s1 = “Um texto qualquer”; // Declaração e Inicialização com ‘Algum outro texto’ String mensagem = new String(“Algum outro texto”);

Tamanho de uma String .length(): retorna o comprimento, isto é, a quantidade de caracteres de uma String. Ex.: s1.length(); // Retorna o tamanho de s1 “JAVA”.length(); // Retorna o tamanho da String “JAVA” DESAFIO: Qual a saída do trecho abaixo? String s1 = “amor”; System.out.println(s1.length()); String s2 = new String(“Anticonstitucionalissimamente”); System.out.println(s2.length());

Tamanho de uma String DESAFIO: Faça um joguinho de contar letras, onde o usuário digita uma palavra e o programa informará a quantidade de letras da palavra. DICA: Crie uma classe chamada ContaLetras e, no método main, solicite que o usuário digite uma palavra, guarde a palavra digitada em uma variável do tipo String e, em seguida, use o método length() para retornar a quantidade de caracteres da String.

Tamanho de uma String DESAFIO: Faça um programa capaz de validar a quantidade de caracteres digitados pelo usuário. O programa deverá perguntar o nome do usuário, porém o nome deverá possuir no mínimo 3 e no máximo 10 letras. Caso o nome digitado não obedeça alguma dessas regras, uma devida mensagem deverá ser mostrada informando o erro.

Posição de caracteres de uma String .substring(): retorna uma String começando em um índice dado. Ex.: s2.substring(2, 5); // Mostra substring de s2 começando em 2 com 5 caracteres DESAFIO: Qual a saída do trecho abaixo? String s1 = “texto”; String s2 = new String(“Algum outro texto”); System.out.println(s2.substring(s1.length())); System.out.println(s2.substring(4,6));

Posição de caracteres de uma String .contains(): retorna verdadeiro se uma substring está contida em uma determinada string. Ex.: “enfileirar”.contains(“lei”); // Retorna true Ex.: “enfileirar”.contains(“fila”); // Retorna false DESAFIO: Qual a saída do trecho abaixo? String s1 = “Strings são imutáveis”; System.out.println(s1.contains(“imutável”); System.out.println(s1.contains(“são”); System.out.println(s1.contains(“ são”); System.out.println(s1.contains(“s são ”);

Posição de caracteres de uma String DESAFIO: Faça um joguinho de Caça-palavras, onde o usuário digita uma frase e em seguida ele poderá verificar se determinada palavra está contida na frase.

Posição de caracteres de uma String .charAt(): retorna o caractere correspondente à posição passada no parâmetro. Ex.: “aluno”.charAt(3); // Retorna n DESAFIO: Qual a saída do trecho abaixo? String s1 = “texto”; System.out.println(s1.charAt(1)); System.out.println(s1.charAt(0)); System.out.println(s1.charAt(2)); System.out.println(s1.charAt(5));

Posição de caracteres de uma String DESAFIO: Crie um Joguinho de adivinhar palavras. Inicialmente, programa deverá informar apenas a quantidade de letras de uma palavra oculta que o usuário terá que adivinhar, o usuário poderá indicar uma posição que ele deseja e o programa irpa revelar qual a letra daquela posição, a palavra irá se revelar aos poucos à medida que o usuário indica as posições que ele deseja revelar.

Posição de caracteres de uma String .indexOf(): retorna o índice correspondente à posição do caractere passado no parâmetro. Ex.: “aluno”.indexOf(‘u’); // Retorna 2 DESAFIO: Qual a saída do trecho abaixo? String s1 = “texto”; System.out.println(s1.indexOf(‘e’)); System.out.println(s1.indexOf(‘t’)); System.out.println(s1.indexOf(‘x’)); System.out.println(s1.indexOf(‘s’));

Posição de caracteres de uma String DESAFIO: Crie um programa que solicite o nome completo do usuário e seja capaz de extrair o seu primeiro nome. O programa deverá solicitar o nome completo e, em seguida, imprimir a mensagem: “Bem-vindo, nome”, onde ‘nome’ corresponde ao primeiro nome digitado. DICA: Para extrair o primeiro nome, use o método indexOf(“ “) para descobrir a posição do primeiro espaço digitado.

Jogo da Forca DESAFIO: Implemente um jogo da forca, onde o Jogador 1 entra com uma palavra e o Jogador 2 tenta adivinhar a palavra “escondida”. Para cada letra “descoberta” a palavra deve tomar forma na tela. O Jogador 2 não tem limite de erros e o programa termina somente quando a palavra for descoberta. DICA: Gerencie duas strings, um com a palavra a ser descoberta e outro, com igual tamanho, inicializado com “_” (caracter sublinhado) representando o que já foi descoberto. A cada letra descoberta, mostrar na tela a palavra em formação.

Jogo da Forca DESAFIO: Implemente uma variante do jogo da forca, onde o Jogador 2 tem um número limitado de erros possíveis: assuma um valor igual ao número de partes que um corpo humano pode ser dividido). A cada erro do jogador 2, imprimir uma parte do corpo O programa termina quando a palavra for descoberta ou quando o Jogador 2 já tiver sito “enforcado”.

/\ Jogo da Forca _o_ | GAME OVER! EXEMPLO: [Entrada] [Saída] Jogador 1: AMOR Jogador 2: M _M__ Jogador 2: L _ O _M__ Jogador 2: T _ O _ _M__ Jogador 2: Z _ O _ | _M__ _M__ … ... _o_ | GAME OVER! /\

Posição de caracteres de uma String DESAFIO: Faça um programa que receba uma string e uma letra, e depois retorne a posição da primeira ocorrência dessa letra na string digitada, caso não haja ocorrência, imprima uma mensagem informando.

Buscando Strings palavra.startsWith(“Nov”); // O conteúdo da variável palavra inicia com “Nov”?(Devolve true ou false) palavra.endsWith(“STE”); // O conteúdo da variável palavra termina com “STE”? sentenca.indexOf(“sub”); // Se a substring ‘sub’ não foi encontrada na variável ‘sentenca’ retorna -1, senão retorna a posição de início de ‘sub’

Comparando Strings Equals(): retorna um booleano indicando se dois objetos string possuem valores internos idênticos. Ex.: if (s2.equals(s1)) { ... } “Teste”.equals(palavra); // Verifica se “Teste” é igual ao conteúdo da variável palavra (Devolve true ou false) palavra.equalsIgnoreCase(“Teste”); // Se o conteúdo da variável palavra for igual a “Teste” independente de maiúsculas e minúsculas, devolve true, senão devolve false

Convertendo Strings valueOf(): vários métodos (overloaded) que recebem como parâmetro um tipo de dado primitivo e retornam uma representação em string. Ex.: String.valueOf(10); // 10 número é convertido para String Este trecho de código faz a variável string s ter o valor “100”. int i = 100; String s = String.valueOf(i); // note que neste exemplo não usamos //uma instância da classe String para invocar o método valueof(). //valueof() é um método de classe ou método estático. Integer.parseInt(“20″); // 20 string é convertida para inteiro Float.parseFloat(“2.023″); // 2.023 string é convertida para float

Concatenando Strings DESAFIO: Qual a saída do trecho abaixo? // Declaração e inicialização com ‘Um texto qualquer’ String s1 = “Um texto qualquer”; // Declaração e Inicialização com ‘Algum outro texto’ String mensagem = new String(“Algum outro texto”); String s2 = s1 + “ algum outro texto”; System.out.println(s2);

Concatenando Strings str.append(” mais string “); Acrescenta ‘mais string’ ao conteúdo de str

Outros métodos str.reverse(); Inverte totalmente o conteúdo de str str.trim(): remove espaços em branco existentes no início ou no final de uma string