解吸后的结果要放在这样一个列表里var1
>
13.0
and
(
var2
>
13.3
*
2
or
var3
>=
0
)

解决方案 »

  1.   

    String a="var1>13.0 and (var2>13.3*2 or var3>=0)";
    int c=0;
    c=a.indexOf(">");//查找“>”在字符串中的索引值
    String arr[i]=str.substring(0,j);//截取“>”前面的变量
    a =a.substring(j);//截取“>”号后面的所有字符看能不能给你点思路,上面的可以放在一个while(!a.equals(""))就一直循环,我想能得到你要的东西。你看看吧
      

  2.   

    你可不可以将
    String a="var1>13.0 and (var2>13.3*2 or var3>=0)";
    改成:
    String a="var1 > 13.0 and ( var2 > 13.3 * 2 or var3 > = 0 )";
    即在关键字后加一个空格,
    这样我可能帮到你。
    好运与你同行
      

  3.   

    如下代码可能对你有帮助。import java.util.StringTokenizer;public class VariableScope
     {
      public static void main(String[] args)
      {
    String a="var1 > 13.0 and ( var2 > 13.3 * 2 or var3 > = 0 )";
         StringTokenizer st = new StringTokenizer(a);
         while (st.hasMoreTokens()) {
             System.out.println(st.nextToken());
         }  }
      

  4.   

    如下代码可能对有帮助:
    import java.util.StringTokenizer;public class VariableScope
     {
      public static void main(String[] args)
      {
    String a="var1 > 13.0 and ( var2 > 13.3 * 2 or var3 > = 0 )";
         StringTokenizer st = new StringTokenizer(a);
         while (st.hasMoreTokens()) {
             System.out.println(st.nextToken());
         } }
      

  5.   

    to:wjmmml(笑着悲伤) 
    为什么要查找">"的索引?
    如果换了一个表达式呢?
    String a="var1>13.0 and (var2>13.3*2 or var3>=0)";
    只是这种表达式的一个例子
    to:hgb_kkh(超级大傻B) 
    我这个东西相对比较简单,而编译原理的书太难看
    各位只要给个思路就可以了,不要贴源码
      

  6.   

    如下代码可能对有帮助:
    import java.util.StringTokenizer;public class VariableScope
     {
      public static void main(String[] args)
      {
    String a="var1 > 13.0 and ( var2 > 13.3 * 2 or var3 > = 0 )";
         StringTokenizer st = new StringTokenizer(a);
         while (st.hasMoreTokens()) {
             System.out.println(st.nextToken());
         } }
      

  7.   

    qiyao(享受每一天)的办法不错
    如果实在不行就这样做了但现在我还想要更好的办法