Pergunta

I've write this code but i have a problem. I want to print "Hi something else" when i write "replace something else. How can i do that?

import java.util.Scanner;
public class replace something
{
    public static void main(String[] args)
    {
        Scanner cumle = new Scanner(System.in);
        System.out.println("Enter the sentence u want to replace :");
        String str1 = cumle.next();
        if (str1.contains("replace"))
        {
            str1 = str1.replace("replace", "Hi");
            System.out.println("Replaced Sentence: " + str1);
        }
        else
        {
            System.out.println("Sentence doesn't contains that...");
        }

    }

}
Foi útil?

Solução

First of all, you have to read the whole line with nextLine(), because next() only reads the next token.

Also, if you want to modify the original string, you have to assign the result of replace() to str1:

str1 = str1.replace("replace", "Hi");

Code:

Scanner cumle = new Scanner(System.in);
System.out.println("Enter the sentence u want to replace :");
String str1 = cumle.nextLine();

if (str1.contains("replace")) {
    str1 = str1.replace("replace", "Hi");
    System.out.println("Replaced Sentence: " + str1);
} else {
    System.out.println("Sentence doesn't contains that...");
}

Outras dicas

You are printing str1 and not str:

change this:

System.out.println("Replaced Sentence: " + str1);

to this:

System.out.println("Replaced Sentence: " + str);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top