[RESOLVIDO]String em Programação Orientada a Objetos

4 respostas Resolvido
J

O exercício é o seguinte:

2 - Subcadeias - Escreva um programa que lê uma cadeia de caracteres de tamanho 20, separa-a em duas e mostra na tela as duas metades.

O meu programa está da seguinte forma, mas não sei como fazer a parte para a separação da String:

import java.util.Scanner;
public class E2
{
    public static void main(String [] args){
	    Scanner s = new Scanner(System.in);
    	System.out.println("Insira uma palavra com 20 caracteres");
    	String palavra = s.nextLine();
	}
}

Alguém me ajuda? ;-;

4 Respostas

wldomiciano

Vc teria que implementar essa separação do sero ou poderia usar as facilidades que a String oferece por padrão?

É que se for usar métodos que já existem na String, vc faria assim:

public class Test {
    public static void main(String[] args) {
        String string = "aaaabbbbccccdddd";

        int meio = string.length() / 2;
        String metade1 = string.substring(0, meio); // pega do primeiro caracter até o meio
        String metade2 = string.substring(meio); // pega do meio em diante

        System.out.println(metade1);
        System.out.println(metade2);
    }
}
J

O programa está da seguinte maneira:

import java.util.Scanner;
public class E2{
public static void main(String [] args){
	Scanner s = new Scanner(System.in);
	System.out.println("Insira uma palavra com 20 caracteres");
	String palavra = s.nextLine();
	int meio = string.length() / 2;
        String metade1 = string.substring(0, meio); // pega do primeiro caracter até o meio
        String metade2 = string.substring(meio); // pega do meio em diante

        System.out.println(metade1);
        System.out.println(metade2);
	}}

E a mensagem que aparece no CMD, é a seguinte:

"
C:\POO>javac E2.java
E2.java:7: error: cannot find symbol
int meio = string.length() / 2;
^
symbol: variable string
location: class E2
E2.java:8: error: cannot find symbol
String metade1 = string.substring(0, meio); // pega do primeiro caracter at├® o meio
^
symbol: variable string
location: class E2
E2.java:9: error: cannot find symbol
String metade2 = string.substring(meio); // pega do meio em diante
^
symbol: variable string
location: class E2
3 errors "

Eu não consigo entender o que tem de errado ;-;

wldomiciano
Solucao aceita

Não tenho certeza, mas parece que tem um problema com as aspas que vc colocou aqui:

System.out.println(Insira uma palavra com 20 caracteres);

Eu mudei para isso:

System.out.println("Insira uma palavra com 20 caracteres");

Não sei se dá pra ver a diferença, mas são aspas diferentes.

Fora isso, vc esqueceu de renomear a variável que crieie de string para palavra.

Eis o seu código corrigido:

import java.util.Scanner;
public class E2{
    public static void main(String [] args){
        Scanner s = new Scanner(System.in);
        System.out.println("Insira uma palavra com 20 caracteres");
        String palavra = s.nextLine();
        int meio = palavra.length() / 2;
        String metade1 = palavra.substring(0, meio); // pega do primeiro caracter até o meio
        String metade2 = palavra.substring(meio); // pega do meio em diante

        System.out.println(metade1);
        System.out.println(metade2);
    }
}

E abaixo um exemplo que vc pode executar:

repl.it/@wldomiciano/ExemploComSubstring

J

Nossa, vc é um deus! Obrigada msm!!! ^-^

Criado 2 de março de 2019
Ultima resposta 4 de mar. de 2019
Respostas 4
Participantes 2