返回{this}

时间:2016-12-13 20:00:03

标签: java

{}

3 个答案:

答案 0 :(得分:1)

你试试这个吗?

first video file

它为我工作。

答案 1 :(得分:0)

这不适合你吗?

public String findWord(String string, String word){
        if (string.contains(word)) {
            return word;
        }
        return "Not found";
    }

答案 2 :(得分:0)

可以在许多语言中重新声明,但在JAVA中则不行。 JAVA编译器知道retVal已经存在于同一范围内并且声明为String类型。因此,它不会重新声明它,无论是相同的数据类型还是不同的数据类型。您可以为此目的使用单独的变量,也可以直接覆盖retVal中的数据。因此,以下代码必须满足您的需求。

 public String findWord(String string, String word){
    String[] text = string.split(" *");
    String retVal = "Not found";
    for(int i=0; i<text.length; i++){
       if(text[i].equals(word)){
           retVal = text[i];
        }
    }
    return retVal;
}

现在string.split的语法是

   public String[] split(String regex,
         int limit)

所以你的分隔符应该是一个有效的表达式。所以你可以使用像这样的空格来分隔句子中的单词

  public String findWord(String string, String word){
String[] text = string.split("  ");
String retVal = "Not found";
for(int i=0; i<text.length; i++){
   if(text[i].equals(word)){
       retVal = text[i];
    }
}
return retVal;
 }

 void main()
 {
   System.out.println(findWord("Hello how are you","are"));
 }

但是如果你想使用*,你可以使用这段代码。

   public String findWord(String string, String word){
String[] text = string.split("\\*");
String retVal = "Not found";
for(int i=0; i<text.length; i++){
   if(text[i].equals(word)){
       retVal = text[i];
    }
}
return retVal;
   }
     void main()
{
  System.out.println(findWord("Hello*how*are*you","are"));
}

两种情况下的输出都是

您可以查看有关正则表达式https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html#sum

的以下文档