質問

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...");
        }

    }

}
役に立ちましたか?

解決

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...");
}

他のヒント

You are printing str1 and not str:

change this:

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

to this:

System.out.println("Replaced Sentence: " + str);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top