App下載
最新 最熱

算法圖解:如何找出棧中的最小值?

前面我們學(xué)習(xí)了很多關(guān)于棧的知識(shí),比如《動(dòng)圖演示:手?jǐn)]堆棧的兩種實(shí)現(xiàn)方法!》和《JDK 竟然是這樣實(shí)現(xiàn)棧的?》,那么接下來(lái)我們?cè)賮?lái)刷一些關(guān)于棧的經(jīng)典面試題以鞏固學(xué)過(guò)的知識(shí)。

2020-10-13
2346

關(guān)于 緩存穿透/緩存擊穿/緩存雪崩 看這篇文章就夠了

國(guó)慶加中秋過(guò)去了,大家準(zhǔn)備好學(xué)習(xí)了么?redis 在項(xiàng)目中用的話,主要就是用作緩存了。既然用作緩存,那就肯定會(huì)有 緩存穿透/緩存擊穿/緩存雪崩 的問(wèn)題。這篇文章就來(lái)說(shuō)說(shuō),遇到這種情況時(shí),該如何去處理

2020-10-13
2523

拜托了,不要再使用!=null判空了!

對(duì)于Java程序員來(lái)說(shuō),null是令人頭痛的東西。時(shí)常會(huì)受到空指針異常(NPE)的騷擾。連Java的發(fā)明者都承認(rèn)這是他的一項(xiàng)巨大失誤。

2020-10-12
2914

JDK 竟然是這樣實(shí)現(xiàn)棧的?

前面的文章《動(dòng)圖演示:手?jǐn)]堆棧的兩種實(shí)現(xiàn)方法!》我們用數(shù)組和鏈表來(lái)實(shí)現(xiàn)了自定義的棧結(jié)構(gòu),那在 JDK 中官方是如何實(shí)現(xiàn)棧的呢?接下來(lái)我們一起來(lái)看。這正式開(kāi)始之前,先給大家再解釋一下「堆?!挂辉~的含義,因?yàn)橹坝凶x者對(duì)這個(gè)詞有一定的疑惑。

2020-09-28
2734

程序員技術(shù)選型:寫(xiě)Go還是Java?

老實(shí)說(shuō),我很喜歡 Java。我在 Spiral Scout 工作的那幾年,使用了 EJB2、DB2 和 Oracle 等后端技術(shù),積累了很多軟件開(kāi)發(fā)方面的專(zhuān)業(yè)知識(shí)。過(guò)去幾年,我轉(zhuǎn)向基于自然語(yǔ)言處理的機(jī)器人項(xiàng)目,涉及的技術(shù)包括 Spring Boot、Redis、RabbitMQ、Open NLP、IBM Watson 和 UIMA。一直以來(lái),我選擇的語(yǔ)言是 Java,它一直很高效,有時(shí)還會(huì)覺(jué)得它很有趣。

2020-09-27
2604

動(dòng)圖演示:手?jǐn)]堆棧的兩種實(shí)現(xiàn)方法!

隨著軟件開(kāi)發(fā)行業(yè)競(jìng)爭(zhēng)的日益激烈,面試的難度也在逐漸增加,因?yàn)槠髽I(yè)要從眾多的面試人中選出最優(yōu)秀的人,只能提高面試的難度,而算法和數(shù)據(jù)結(jié)構(gòu)比較燒腦的硬核技能之一,自然也就成了面試的首選科目。并且隨著時(shí)間的推移,算法和數(shù)據(jù)結(jié)構(gòu)出現(xiàn)的頻率和占比也會(huì)不斷增加

2020-09-23
2949

解決Java異常的10個(gè)實(shí)踐經(jīng)驗(yàn)

異常處理對(duì)于編寫(xiě)健康茁壯的Java應(yīng)用起著極其重要的作用。異常處理并不是功能性需求,在實(shí)踐中,異常處理不單單是知道語(yǔ)法這么簡(jiǎn)單。下面給大家展示10個(gè)最佳實(shí)踐。

2020-09-23
2129

如何設(shè)計(jì)一個(gè)看起來(lái)很牛逼的API接口

在平時(shí)工作中,總會(huì)接觸到多種接口。前后端數(shù)據(jù)傳輸接口,第三方業(yè)務(wù)平臺(tái)接口。一個(gè)平臺(tái)的前后端數(shù)據(jù)傳輸接口一般都會(huì)在內(nèi)網(wǎng)環(huán)境下通信,而且會(huì)使用安全框架,所以安全性可以得到很好的保護(hù)。這篇文章重點(diǎn)討論一下提供給第三方平臺(tái)的業(yè)務(wù)接口應(yīng)當(dāng)如何設(shè)計(jì)?

2020-09-22
2527

Java新特性:var,數(shù)據(jù)類(lèi)型可以扔掉了?

在很久很久以前,我們寫(xiě)代碼時(shí)要慎重的考慮變量的數(shù)據(jù)類(lèi)型,然而到了 JDK 10 時(shí),我們就有了新的選擇,JDK 10 中新增了 var 局部變量推斷的功能,使用它我們可以很 happy 的忘記數(shù)據(jù)類(lèi)型這件事了,那它是如何使用的呢?接下來(lái)我們一起來(lái)看。

2020-09-21
6622

阿里巴巴為何禁止使用BigDecimal的equals方法做等值比較?

BigDecimal 很多人應(yīng)該聽(tīng)說(shuō)過(guò)它,也知道它的用法,它是java.math包中提供的一種可以用來(lái)進(jìn)行精確運(yùn)算的類(lèi)型。

2020-09-21
2464