Boa Noite Estou com uma duvida na manipulação de String: Bom meu exercício consiste em Desenvolver uma classe em java, como o objetivo de realizar analises em uma cadeia de caracteres. Que contem alguns métodos, como: - Definir(setar) uma cadeia principal de caracteres; - Definir(setar) uma cadeia secundária de caracteres; - Retorna quantas vezes o cadeia secundária ocorre na cadeia principal; - Retorna a posição da primeira ocorrência da cadeia secundária dentro da principal; - Dado uma faixa de posições, retornar quantas vezes o cadeia secundária ocorre na cadeia principal; - Dado uma faixa de posições, retornar a posição da primeira ocorrência da cadeia secundária dentro da principal. Mas estou com problemas para chamar as funções na Classe com o Método Main; Quem possa analisar meu código e me ajudar fico grato desde já: Meu código segue abaixo; Obrigado Abraço
package comparacao_de_strings;/**
*
* @author Administrador
*/publicclassStrings{privateint aux;privateint contaContem;privateint contem;privateint naocontem;String str1;String str2;publicint getAux(){return aux;}publicvoid setAux(int aux){this.aux = aux;}publicint getContaContem(){return contaContem;}publicvoid setContaContem(int contaContem){this.contaContem = contaContem;}publicint getContem(){return contem;}publicvoid setContem(int contem){this.contem = contem;}publicint getNaocontem(){return naocontem;}publicvoid setNaocontem(int naocontem){this.naocontem = naocontem;}publicString getStr1(){return str1;}publicvoid setStr1(String str1){this.str1 = str1;}publicString getStr2(){return str2;}publicvoid setStr2(String str2){this.str2 = str2;}public boolean existe(){int tamP = str1.length();int tamS = str2.length();int i, j =0;for(i =0; i <= tamP - tamS; i++){if(str1.charAt(i)== str2.charAt(0)){while(str1.charAt(i + j)== str2.charAt(j)){
j++;if(j == tamS);returntrue;}}}returnfalse;}publicint compararStrings(String str1,String str2){int tamanhodastr1 = str1.length();int tamanhodastr2 = str2.length();int aux =0;for(int i =0; i < tamanhodastr1; i++){for(int x =0; x < tamanhodastr2; x++){if(str2.charAt(x)!= str1.charAt(i + x)){
naocontem++;if(str1.equals(str2)){System.out.println("");}}else{
contaContem++;}if(naocontem >0){break;}}if(naocontem ==0){
contem++;if(contem ==1){
aux = i;}}
naocontem =0;}return contem;}publicint contFaisa(String str1,String str2,int inicio,int fim){int aux =0;int tamanhodastr1 = fim;int tamanhodastr2 = str2.length();for(int i = inicio; i < tamanhodastr1; i++){for(int x =0; x < tamanhodastr2; x++){if(str2.charAt(x)!= str1.charAt(i + x)){
naocontem++;}else{
contaContem++;}if(naocontem >0){break;}}if(naocontem ==0){
contem++;if(contem ==1){
aux = i;}}
naocontem =0;}return contem;}}
package comparacao_de_strings;import java.util.Scanner;/**
*
* @author Administrador
*/publicclassComparacao_de_Strings{/**
* @param args the command line arguments
*/publicstaticvoid main(String[] args){int opcao;String str1;String str2;int inicio;int fim;int sair;Strings t =newStrings();Scanner ler =newScanner(System.in);while(true){System.out.println("Digite 1 para comparar Strings ; "+"2 para comparar em uma faixa de posições ;"+" ou 0 para sair");
opcao = ler.nextInt();switch(opcao){case1:System.out.println("String nº1:");
str1 = ler.nextLine();System.out.println("String nº2:");
str2 = ler.nextLine();System.out.println("A String 2 Contem "+ t.getContem()+" vezes na String 1");System.out.println("A primeira ocorrencia aparece em "+ t.getAux()+" ");
t.compararStrings(str1, str2);break;case2:System.out.println("String nº1:");
str1 = ler.nextLine();System.out.println("String nº2:");
str2 = ler.nextLine();System.out.println("Escreva o valor de inicio para a faixa de Valores");
inicio = ler.nextInt();System.out.println("Escreva o valor final para a faixa de Valores");
fim = ler.nextInt();
t.contFaisa(str1, str2, inicio, fim);System.out.println("A String 2 Contem "+ t.getContem()+" vezes na String 1");System.out.println("A primeira ocorrencia aparece em "+ t.getAux()+" ");break;default:System.out.println("Vc saiu");break;}System.out.println("");if(opcao ==0){break;}}}}
Pergunta
Giovane Lizot
Boa Noite Estou com uma duvida na manipulação de String:
Bom meu exercício consiste em Desenvolver uma classe em java, como o objetivo de realizar analises em uma cadeia de caracteres. Que contem alguns métodos, como:
- Definir(setar) uma cadeia principal de caracteres;
- Definir(setar) uma cadeia secundária de caracteres;
- Retorna quantas vezes o cadeia secundária ocorre na cadeia principal;
- Retorna a posição da primeira ocorrência da cadeia secundária dentro da principal;
- Dado uma faixa de posições, retornar quantas vezes o cadeia secundária ocorre na cadeia principal;
- Dado uma faixa de posições, retornar a posição da primeira ocorrência da cadeia secundária dentro da principal.
Mas estou com problemas para chamar as funções na Classe com o Método Main;
Quem possa analisar meu código e me ajudar fico grato desde já:
Meu código segue abaixo;
Obrigado
Abraço
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.