请大神给我解释一下下面这个JAVA语句的意思。我在用JAVA编android的计算器。

intmultiplyIndex=str.indexOf("x");intdivideIndex=str.indexOf("÷");intfirstOperationIn... int multiplyIndex = str.indexOf("x");
int divideIndex = str.indexOf("÷");
int firstOperationIndex = -1;
if (multiplyIndex == -1) firstOperationIndex = divideIndex;
if (divideIndex == -1) firstOperationIndex = multiplyIndex;
if (firstOperationIndex == -1) firstOperationIndex = Math.min(multiplyIndex, divideIndex);
String operation = str.substring(firstOperationIndex, firstOperationIndex+1);
String leftE = str.substring(0, firstOperationIndex-1);
String rightE = str.substring(firstOperationIndex+2);
其中,str是一个字符串,如“1+4+5x3+5”之类的
展开
 我来答
kgawr
2017-03-08 · TA获得超过174个赞
知道小有建树答主
回答量:115
采纳率:100%
帮助的人:54.3万
展开全部

简单点说 就是  找 x或÷,两个都有时 前一个  ,进行 两刀切成三段  进行分别赋值。

  1. 找到str中 x 的下标 (下标从0开始)

  2. 找到str中 ÷ 的下标

  3. 定义变量firstOperationIndex (f)//下方f指代此变量

  4. 如果str中没有 x ,f 变量值为 ÷ 的下标

  5. 如果str中没有 ÷ ,f 变量值为 x 的下标

  6. 如果str中x /÷都有,f  变量值为  ÷/x  靠前的那个下标

  7. 定义变量operation 值为: 下标从 f 开始到 f+1 的区间的内容

    (str只有÷,值为÷;str只有x,值为x;str x /÷都有,值为靠前的一个;)

  8. 定义变量eftE 值为:从开头 到下标 f 前一个

    (str只有÷,值为开头直到÷;str只有x,值为开头直到x;str x /÷都有,值为开头直到靠前的一个;)

  9. 定义变量rightE 值为:从下标 f 后一个到结尾

    (str只有÷,值为从÷直到结尾;str只有x,值为从x直到结尾;str x /÷都有,值为从靠前的一个直到结尾;)


推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式