技術(shù)訓(xùn)練營(yíng)——第五周思想報(bào)告

【第 5 周討論主題:Java 基本編程語(yǔ)法】
1.寫幾行你覺得能代表你個(gè)人技術(shù)標(biāo)簽的 Java 代碼

TridentTopology topology = new TridentTopology();
Stream stream = topology.newStream("spout", spout);
EsConfig esConfig = new EsConfig("http://localhost:9300");
Fields esFields = new Fields("index", "type", "source");
EsTupleMapper tupleMapper = EsTestUtil.generateDefaultTupleMapper();
StateFactory factory = new EsStateFactory(esConfig, tupleMapper);
TridentState state = stream.partitionPersist(factory,esFields,new EsUpdater(),new Fields());

2.如何解決 if-else 多層嵌套的問(wèn)題。
首先,要梳理一下代碼業(yè)務(wù),將業(yè)務(wù)分層,把接口分為外部和內(nèi)部接口,所有空值判斷放在外部接口完成;而內(nèi)部接口傳入的變量由外部接口保證不為空,從而減少空值判斷

其次,利用多態(tài),把業(yè)務(wù)判斷消除,各子類分別關(guān)注自己的實(shí)現(xiàn),并實(shí)現(xiàn)子類的創(chuàng)建方法,避免用戶了解過(guò)多的類。

然后。可以考慮把分支狀態(tài)信息預(yù)先緩存在HashMap里,直接get獲取具體值,消除分支。

3.switch 有哪些奇葩的脾氣?
switch中是不能寫變量的,只能寫常量,但不支持boolean和long類型,支持枚舉類型和字符串類型。

要注意避免數(shù)據(jù)穿透的問(wèn)題,break一定要記得添加在case條件中

default便于后續(xù)補(bǔ)充你沒有想到的邏輯,因此如果要用switch一定要加default條件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這是16年5月份編輯的一份比較雜亂適合自己觀看的學(xué)習(xí)記錄文檔,今天18年5月份再次想寫文章,發(fā)現(xiàn)簡(jiǎn)書還為我保存起的...
    Jenaral閱讀 3,115評(píng)論 2 9
  • 第01章 JAVA簡(jiǎn)介第02章 基礎(chǔ)語(yǔ)法第02章 遞歸補(bǔ)充第03章 面向?qū)ο蟮?4章 異常處理第05章 數(shù)組第06...
    順毛閱讀 557評(píng)論 0 1
  • 第一章:Java程序設(shè)計(jì)概述 Java和C++最大的不同在于Java采用的指針模型可以消除重寫內(nèi)存和損壞數(shù)據(jù)的可能...
    loneyzhou閱讀 1,359評(píng)論 1 7
  • 小編費(fèi)力收集:給你想要的面試集合 1.C++或Java中的異常處理機(jī)制的簡(jiǎn)單原理和應(yīng)用。 當(dāng)JAVA程序違反了JA...
    八爺君閱讀 5,172評(píng)論 1 114
  • 鵬飛高效慢生活(第三版) 2018.11.09星期五 昨日午休/冥想:30min 九宮格目標(biāo)及關(guān)鍵點(diǎn) ① 學(xué)習(xí)·成...
    All_Fine閱讀 234評(píng)論 0 0

友情鏈接更多精彩內(nèi)容