Slipt Formula String

时间:2016-04-06 15:56:51

标签: java string split

这是我的代码,用于分割公式以获取术语,例如公式为“CH3O2”。我需要拆分它,所以我得到术语('C',1),术语('H',3),术语('O',2)。稍后这些将存储在ArrayList中。

<head>

1 个答案:

答案 0 :(得分:1)

您的陈述/问题并不完全清楚。假设您的输入中没有逗号(如您的示例&#34; CH3O2和#34;),它不会与String.split分开。以下示例处理您的难题的意图。

public class StackOverflow
{
  private static final String testString = "CH3O2";

  public static void main(String[] args)
  {
    List<String> terms = new ArrayList<String>();
    for (int i = 0; i < testString.length(); i++)
    {
      if (Character.isUpperCase(testString.charAt(i)))
      {
        if (i + 1 < testString.length()
            && Character.isDigit(testString.charAt(i + 1)))
        {
          terms.add(testString.charAt(i) + "," + testString.charAt(i + 1));
          i++;
          continue;
        }
        terms.add(testString.charAt(i) + ",1");
      }
    }
    for (String s : terms)
    {
      System.out.println(s);
    }
  }
}