将行为与数组初始化混淆--处理(Java)

将行为与数组初始化混淆--处理(Java),java,processing,Java,Processing,在尝试创建特定长度的数组时,我遇到了一些令人困惑的行为。长度由函数getTermNums中读取的文件获得。当我尝试创建这样大小的数组时,我的代码以奇怪的顺序运行,我的I值是倾斜的,代码通常不会按预期运行。当我创建一个设置为整数的数组时,代码按预期运行,没有错误 双重[]条款; int numTerms=getnumtermsline[0]; 术语=新的双精度[numTerms]; int i=1; 对于i=1;我在没有看到文本的情况下,在getNumTerms中推断错误发生的位置是令人厌烦的 您

在尝试创建特定长度的数组时,我遇到了一些令人困惑的行为。长度由函数getTermNums中读取的文件获得。当我尝试创建这样大小的数组时,我的代码以奇怪的顺序运行,我的I值是倾斜的,代码通常不会按预期运行。当我创建一个设置为整数的数组时,代码按预期运行,没有错误

双重[]条款; int numTerms=getnumtermsline[0]; 术语=新的双精度[numTerms]; int i=1;
对于i=1;我在没有看到文本的情况下,在getNumTerms中推断错误发生的位置是令人厌烦的

您可以使用查找项的索引并提取包含整数值的字符串

据我所知,理想的字符串应该是一个术语后跟一个整数,然后是一个空格字符。如果找到这些项目,并且您应该能够使用以下内容:

String line = "LINE START TERM-1238847 LINE END";

int getTerm(String line){
  int result = Integer.MAX_VALUE;
  final String SEARCH_TOKEN = "TERM";
  // look for TERM token and remember index
  int termIndex = line.indexOf(SEARCH_TOKEN);
  // handle not found
  if(termIndex < 0){
    System.err.println("error: " + SEARCH_TOKEN + " not found in line");
    return result;
  }
  // move index by the size of the token
  termIndex += SEARCH_TOKEN.length();
  int spaceIndex = line.indexOf(' ',termIndex);
  if(spaceIndex < 0){
    System.err.println("error: no SPACE found after " + SEARCH_TOKEN);
    return result;
  }
  // chop string extracing between token end and first space encountered
  String intString = line.substring(termIndex,spaceIndex);
  // try to parse int handling error
  try{
    result = Integer.parseInt(intString);
  }catch(Exception e){
    System.err.println("error parsing integer from string " + intString);
    e.printStackTrace();
  }

  return result;
}


System.out.println("parsed integer: " + getTerm(line));

你能发布你正在解析的文本的样本吗?如何解析numTerms整数值可能有问题。是否使用了调试器?