Java - 错误:找不到符号 - 变量

时间:2016-04-16 10:36:59

标签: java parsing bluej

我试图在java上编写一个接受字符串的方法,并将第一个字符返回给char变量,将字符串中的数字返回给整数变量。字符串将始终遵循一个字符和一个/两个数字(例如C25或C5)的格式。它编译,但当我调用该方法时,我得到错误:错误:找不到符号 - 变量C5。 C5是我输入的字符串。

    import java.lang.*;
    public class Term
{
    private char element;
    private int  atoms;

    // creates a Term with the provided values
    public Term(char element, int atoms)
    {
        this.element = element;
        this.atoms = atoms;
    }


   // creates a Term by parsing s 
   // e.g. "H20" would give element = 'H', atoms = 20 
    public Term(String s)
    {
        if (s.length() > 1) {
        int x = Integer.parseInt(s);
        char y = s.charAt(0);
        this.atoms = x;
        this.element = y;
        } else {
        this.element = s.charAt(0);
        }

    }

    // turns the Term into a String 
    // e.g. element = 'C', atoms = 4 would give "C4"
    public String display()
    {
        String rtnstr;
        rtnstr = "";
        if (atoms > 1 || atoms != 0) {
            String str1 = Character.toString(element);
            String str2 = String.valueOf(atoms);
            rtnstr = str1 + str2;
        } else if (atoms == 1) {
        rtnstr = Character.toString(element);
        } else if (atoms == 0) {
        rtnstr = "Error, zero atoms present in term.";
        }
        return rtnstr;
    }

    // returns the current value of element 
    public char getElement()
    {
        return element;
    }

    // returns the current value of atoms 
    public int getAtoms()
    {
        return atoms;
    }
}

由于

1 个答案:

答案 0 :(得分:0)

看到格式总是一个字符和一个/两个数字(例如C25或C5),你可以这样做

public Term(String s) {
    this.element = s.charAt(0);
    this.atoms = Integer.parseInt(s.subString(1));
}