1, tf.getText().length()<15 && (tf.getText().indexOf(".")==-1 || !s.equals("."))
2, tf.setText((tf.getText()+s).substring(0,15))
3, if(op.equals("+")){
    tf.setText(cal.opAdd(tf.getText()));
    ifOp = true;
    }else if(op.equals("-")){
    tf.setText(cal.opSubtract(tf.getText()));
    ifOp = true;
    }else if(op.equals("*")){
    tf.setText(cal.opMultiply(tf.getText()));
    ifOp = true;
    }else if(op.equals("/")){
    tf.setText(cal.opDivide(tf.getText()));
    ifOp = true;
    }else if(op.equals("=")){
    tf.setText(cal.opEquals(tf.getText()));
    ifOp = true;这是一个计算器程序里的一些代码,不太明白它们的意思,求高手解答一下~

解决方案 »

  1.   

    1、如果tf里面的文本的长度小于15并且文本包含小数点,或者没有小数点,且来判断两种情况:分别是:
       A:有小数点并且文本长度小于15
       B:没有小数点2、tf.getText()+s 表示把tf里面的文本和S连接起来,(连接结果).substring(0,15)表示截取连接结果 的第0到15个字符,tf.setText(截取之后的结果)表示把截取之后的结果设置到tf中去。3、op.equals("+")表示op是不是加号,op.equals("*")表示op是不是乘号,以此类推。
       cal.opAdd(tf.getText())表示执行cal对象的opAdd()方法,把tf的文本值当参数传进去,  
       tf.getText()用来拿到tf的文本。最好加一句,楼主要先学好基础啊。