摘要:每日算法題目將碼位于之間的個(gè)字符顯示在屏幕上,為了美觀,要求小于的碼值前填充一個(gè),每打印個(gè)字符后換行。本文已轉(zhuǎn)載個(gè)人技術(shù)公眾號(hào)歡迎留言討論與點(diǎn)贊上一篇推薦貓說(shuō)每日算法實(shí)現(xiàn)特殊累加值下一篇推薦貓說(shuō)每日算法枚舉求就業(yè)率問(wèn)題 Java每日算法 題目 將ASCII碼位于32-126之間的95個(gè)字符顯示在屏幕上,為了美觀,要求小于100的碼值前填充一個(gè)0,每打印8個(gè)字符后換行。 分析 這里先注意...
摘要:而導(dǎo)致這個(gè)問(wèn)題的原因是線程并行執(zhí)行操作并不是原子的,存在線程安全問(wèn)題。如果已經(jīng)有線程持有了鎖,那這個(gè)線程會(huì)獨(dú)占鎖,直到鎖釋放完畢之前,其他線程都會(huì)被阻塞。當(dāng)鎖處于重量級(jí)鎖狀態(tài),其他線程嘗試獲取鎖時(shí),都會(huì)被阻塞,也就是狀態(tài)。 1. 什么時(shí)候需要用SynchronizedSynchronized主要作用是在多個(gè)線程操作共享數(shù)據(jù)的時(shí)候,保證對(duì)共享數(shù)據(jù)訪問(wèn)的線程安全性。比如兩個(gè)線程對(duì)于i這個(gè)共...
摘要:項(xiàng)目的版本設(shè)置在中,我們需要設(shè)置中的和中的中的版本為自己目前使用的版本,否則會(huì)經(jīng)常提示我們版本不正確導(dǎo)致的語(yǔ)法錯(cuò)誤。比如配置為但是在項(xiàng)目中,和中的設(shè)置會(huì)自動(dòng)變回到文件中設(shè)置的版本或者默認(rèn)的版本。 IDEA-Maven項(xiàng)目的jdk版本設(shè)置 在 Intellij Idea 中,我們需要設(shè)置 Settings 中的 Java Compiler 和 Project Structure 中的 L...
適用場(chǎng)景 讀操作頻發(fā),寫操作不頻繁。 兩個(gè)線程同時(shí)讀取同一個(gè)共享資源沒(méi)有任何問(wèn)題 如果一個(gè)線程對(duì)共享資源進(jìn)行寫操作,此時(shí)就不能有其他線程對(duì)共享資源進(jìn)行讀寫 條件分析 寫操作的優(yōu)先級(jí)高于讀操作,在讀操作頻繁的場(chǎng)景下,如果寫操作沒(méi)有高于讀操作的優(yōu)先級(jí),就會(huì)導(dǎo)致寫操作線程餓死的情況發(fā)生 讀操作觸發(fā)條件: 沒(méi)有線程正在執(zhí)行寫操作 沒(méi)有線程在等待執(zhí)行寫操作 寫操作觸發(fā)條件:沒(méi)有線程正在執(zhí)行讀寫...
摘要:但是這種手寫文檔帶來(lái)的弊端就是維護(hù)起來(lái)苦不堪言,對(duì)于接口容易發(fā)生變化的開(kāi)發(fā)者來(lái)說(shuō),維護(hù)文檔就是噩夢(mèng)好在現(xiàn)如今市場(chǎng)上書(shū)寫文檔的工具有很多,常見(jiàn)的有阿里的但是能稱之為框架的,估計(jì)也只有了。 SpringBoot 是為了簡(jiǎn)化 Spring 應(yīng)用的創(chuàng)建、運(yùn)行、調(diào)試、部署等一系列問(wèn)題而誕生的產(chǎn)物,自動(dòng)裝配的特性讓我們可以更好的關(guān)注業(yè)務(wù)本身而不是外部的XML配置,我們只需遵循規(guī)范,引入相關(guān)的依賴...