Java 如何修复此非编译方法?

Java 如何修复此非编译方法?,java,compiler-errors,Java,Compiler Errors,做一些练习题,上面写着: 假设语句stringpattern=getPattern()。解释方法getPattern()中是否存在任何流。你将如何修复它 代码如下: public static String getPattern() { Scanner inPattern = new Scanner(System.in); String pattern = " "; boolean valid = false; int i = 0; while(!valid){ Sy

做一些练习题,上面写着:

假设语句
stringpattern=getPattern()。解释方法getPattern()中是否存在任何流。你将如何修复它

代码如下:

public static String getPattern() {
  Scanner inPattern = new Scanner(System.in);
  String pattern = " ";
  boolean valid = false;
  int i = 0;
  while(!valid){
    System.out.println("please enter a valid pattern with X or x");
    pattern = inPattern.next();
 if ( !  (pattern.charAt(i) == 'X' || pattern.charAt(i) == 'x'
    || pattern.charAt(i) == 'r'))
    System.out.println("You have entered an invalid pattern");
else if ((i + 1) == pattern.length()) valid = true;
};
inPattern.close();
return pattern;
}
我真的不知道该怎么解决这个问题。。。显然,这是一个较大代码中的一小部分,因为它不包括主方法,个人而言,这使它更难看出哪里出了问题


我真的不确定到底要改变什么。我已经连续7个多小时观看youtube视频,试图理解这些东西或回答这个问题,但我真的搞不懂。有谁能提供一个好的例子吗?

好的,那么首先要做的就是。你收到的代码是你运行它所需要的全部,它不是“更大程序”的一部分。它告诉你假设它的名字是这样的:

String pattern = getPattern();
那么当从主方法调用方法“getPattern”时会发生什么?系统会提示您输入一个“有效”字符,如果该字符有效,该方法将返回该字符


这个问题本身设计得很奇怪。但是看看代码,我猜他们想要的是你被告知输入字符“x”或“x”。但在代码中,另一个有效字符是“r”。因此,我猜要么他们希望您更改提供给用户的文本,要么删除作为有效字符的“r”

“非编译方法?”--是否收到错误消息?将其添加到您的帖子中。解释方法getPattern()中是否存在任何流。你将如何修复它?这真的是问题吗?这是胡说八道,因为它不是一个完整的句子。此外,在发布此类问题时,您应该发布编译器错误。他们会告诉你为什么它不编译“Flow”?你是说“缺陷”吗?