簡體   English   中英

包含不適用於(“ \\\\ +”)的方法

[英]contains method not working for (“\\+”)

我正在嘗試為Android編寫計算器應用。 對於4個主要運算符(-* / +),我使用了此方法;對於其中3個運算符,它沒有任何問題,但是對於+運算符,它無法識別字符串i中的+號。 他是我的/和+運算符的代碼:

case R.id.buttonEql:
            current=show.getText().toString();
           if(current.contains("/"))
           { current+=input.getText().toString();
               show.setText(current);
              parts  = current.split("/");
           firstNumber = Integer.parseInt(parts[0]);
           secondNumber = Integer.parseInt(parts[1]);
              operationResult = firstNumber/secondNumber;
               show.setText("");
               show.setText(String.valueOf(operationResult));
               input.setText("0");
           }
           else if (current.contains("\\+"))
           {current=show.getText().toString();
               current+=input.getText().toString();
               show.setText(current);
               parts  = current.split("\\+");
               firstNumber = Integer.parseInt(parts[0]);
               secondNumber = Integer.parseInt(parts[1]);
               operationResult = firstNumber+secondNumber;
               show.setText("");
               show.setText(String.valueOf(operationResult));
               input.setText("0");}

在其他情況下,僅執行current.contains("+").

您正在傳遞一個正則表達式(轉義它),您不應該為String包含函數。 檢查Java API文檔中的字符串

請使用不帶轉義的contains()和帶轉義的split()

current.contains("+")

current.split("\\+")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM