Schrijf een programma dat een aantal lijnen tekst inleest en deze allemaal samenvoegd tot 1 string. Gebruik een methode voor het tellen van het aantal woorden in de String. Schrijf deze woorden 1 voor 1 uit.
De uitvoer van het programma klopt niet..
Kan iemand mij helpen de fout op te sporen?
Mijn code:
De uitvoer van het programma klopt niet..
Kan iemand mij helpen de fout op te sporen?
Mijn code:
Code:
import java.util.Scanner;
public class TekstInlezen{
private String tekst;
private int aantalWoorden=0;
public TekstInlezen(String s){
tekst=s;
}
public TekstInlezen(TekstInlezen t){
tekst=t.tekst;
}
public void lees(){
Scanner sc= new Scanner(System.in);
StringBuffer sb= new StringBuffer(100);
while(sc.hasNextLine()){
sb.append(sc.nextLine());
//sb.append(System.getProperty("line.seperator"));
}
tekst= sb.toString();
}
public void telWoorden() {
for(int i=0;i<tekst.length();i++){
if(tekst.charAt(i)==' '){
aantalWoorden++;
}
}
System.out.println("Aantal woorden:"+aantalWoorden);
}
public String Omgekeerd() {
StringBuffer sb= new StringBuffer(tekst.length());
int lengte= tekst.length();
for(int i=lengte-1;i>=0;i--){
sb.append(tekst.charAt(i));
}
return sb.toString();
}
}
public class MainTekstInlezen {
public static void main(String[]args){
TekstInlezen tekst= new TekstInlezen("abc");
System.out.println("Geef tekst in:");
tekst.lees();
System.out.println("Aantal woorden tellen:");
tekst.telWoorden();
System.out.println("Tekst Omgekeerd:");
tekst.Omgekeerd();
}
}
Laatst bewerkt door een moderator: