我有一個像如何處理字符串取得布林輸出
String str="(0 & (0 || 1))";
字符串我需要處理此布爾輸出時例如
(0||1)= 1
(0 & 1)=0
所以我最後的輸出應該0
根據字符串"(0 & (0 || 1))";
你如何處理?
我試着用下面的代碼:
String str="(1 & (1 & 1))";
str=str.replaceAll("1","true");
str=str.replaceAll("0", "false");
System.out.println(str);
Boolean boolean2 = Boolean.parseBoolean(str);
String sr=String.valueOf(str);
System.out.println(boolean2);
你不能因爲即使解析括號與正則表達式做到這一點是不可能的。簡單地標記輸入並構建一個分析樹,然後編寫一個評估函數。 – perreal
可以請你解釋(在代碼中)如何做到這一點?我嘗試了一些使用標記器的過程 StringTokenizer str1 = new StringTokenizer(str); \t \t而(str1.hasMoreElements()){ \t \t \t如果(!(str1.nextElement()。等於( 「(0」))){ \t \t \t Object對象=(對象)str1.nextElement( ); \t \t \t的System.out.println(對象); \t \t \t} \t \t} 但我沒有得到它 – user3628323
請包括你已經嘗試*在你的問題*代碼 –