到目前为止,我已经编写了这段代码来检查字符串是否有连续的升序或降序字符。这些是标记输入是否连续的不变量,如 89012 或 xyZabc 这样的字符串将计为连续。另一方面,09283dgdDDf 不算是连续的。诸如 AbCBa 或 1abC 之类的特殊情况应返回 false。另一方面 DcbaZ 应该返回 true
请注意,到目前为止,我的代码仅适用于字符部分,请帮助这个菜鸟使其工作。我有错误
import java.util.Scanner;
public class generalizedorder {
public static void main(String[] args)
{
java.util.Scanner reader = new java.util.Scanner(System.in);
System.out.println("Enter the string");
String s = reader.next();
}
public boolean checkForAscendingOrDescendingPart(String s, int l)
{
for (int i = 0; i <= s.length() - l; ++i)
{
boolean success = true;
char c = s.charAt(i);
for (int j = 1; j < l; ++j)
{
if (((char) c + j) != s.charAt(i + j))
{
success = false;
break;
}
}
if (success) return true;
success = true;
for (int j = 1; j < l; ++j)
{
if (((char) c - j) != s.charAt(i + j))
{
success = false;
break;
}
}
if (success) return true;
}
return false;
}}
system.out.println(checkForAscendingOrDescendingPart);
}}