#24486: Java 的提示


My2020Java (Java練習生)


Java 寫這題,用 StringTokenizer 來處理

StringTokenizer tok = new StringTokenizer(bufR.readLine(),"+*",true);

將加號、乘號作為分隔符,後面處理就很容易了

PS : bufR.readLine() 是讀取一行測資,至於怎麼讀請自己思考

#34778: Re: Java 的提示


liaoweichen1024@gmail.com (M_SQRT)


我認為ForEach迴圈在這裡也很好用
for(String s: new java.io.BufferedReader(new java.io.InputStreamReader(System.in)).readLine().split("\\+"))
先把要+的區塊拆出來,再使用
for(String s1: s.split("\\*"))
把s1轉int並且乘起來
這樣兩層ForEach就能把這題處理完了
可能沒有StringTokenizer快,但是還滿方便的。

註:
這裡呼叫split的參數比較特別,因為它要符合「Regex正規表示式」,我的這篇解題報告有詳細介紹到它:
https://zerojudge.tw/ShowThread?postid=34387&reply=0