1
我使用Android Studio 2.2.2
。我有這樣的代碼:在Android Studio中砍下鏈式方法調用
new StringBuilder ().append ("<script type='text/x-mathjax-config'>").append ("MathJax.Hub.Config({ ").append ("showMathMenu: false, ").append ("jax: ['input/TeX','output/HTML-CSS'], ").append ("extensions: ['tex2jax.js','toMathML.js'], ").append ("TeX: { extensions: ['AMSmath.js','AMSsymbols.js',").append ("'noErrors.js','noUndefined.js'] }, ").append ("});</script>").append ("<script type='text/javascript' ").append ("src='file:///android_asset/MathJax/MathJax.js'").append ("></script>").append ("<span id='math'></span><pre><span id='mmlout'></span></pre>").toString ()
正如你所看到的,它很長,並代表一行。有沒有辦法將其轉換爲這樣的:
new StringBuilder ()
.append ("<script type='text/x-mathjax-config'>")
.append ("MathJax.Hub.Config({ ")
.append ("showMathMenu: false, ")
.append ("jax: ['input/TeX','output/HTML-CSS'], ")
.append ("extensions: ['tex2jax.js','toMathML.js'], ")
.append ("TeX: { extensions: ['AMSmath.js','AMSsymbols.js',")
.append ("'noErrors.js','noUndefined.js'] }, ")
.append ("});</script>")
.append ("<script type='text/javascript' ")
.append ("src='file:///android_asset/MathJax/MathJax.js'")
.append ("></script>")
.append ("<span id='math'></span><pre><span id='mmlout'></span></pre>")
.toString ()
在每一行上面開始與.append()
,並只包括其中之一。這更可讀。
注:
- 上面的代碼是一個例子,這樣的表現是不是在這裏importatnt。
- 我知道我可以去
Settings > Editor > General
並選擇Use soft wrap in editor
和Use original line's indent for wrapped parts
,但導致一些這樣的事,這是不可讀:
你不能使用StringBuilder,而是使用Freemarker或HTML模板 –
@ cricket_007看起來你建議使用'template engines'。但我想在'Android Studio'中找到一種方法(例如'code reformatting')來爲我做這件事。 – hasanghaforian
編輯器 - 代碼樣式 - Java - 鏈式方法調用。選擇「如果長時間砍倒」和「多行對齊」。或者使用kotlin和它的多行字符串:-)但是你不應該在這裏首先使用StringBuilder。只需使用'+'連接字符串的各個部分即可。獎勵:連接將發生在編譯時而不是運行時。 –