Time of Update: 2018-07-25
在java中運行一下代碼 System.out.println(2.00-1.10); 輸出的結果是:0.8999999999999999 很奇怪,並不是我們想要的值0.9 再運行如下代碼: System.out.println(2.00f-1.10f); 輸出結果:0.9 又正確了,為什麼會導致這種問題。程式中為什麼要盡量避免浮點數比較。 在java中浮點型預設是double的,及2.00和1.10都要在電腦裡轉換進行二進位儲存,這就涉及到資料精度,出現這個現象的原因正是浮點型資料的精度問題。
Time of Update: 2018-07-25
所謂記憶體泄露就是指一個不再被程式使用的對象或變數一直被佔據在記憶體中。java中有記憶體回收機制,它可以保證一對象不再被引用的時候,即對象變成了孤兒的時候,對象將自動被記憶體回收行程從記憶體中清除掉。由於Java 使用有向圖的方式進行記憶體回收管理,可以消除引用迴圈的問題,例如有兩個對象,相互引用,只要它們和根進程不可達的,那麼GC也是可以回收它們的。 下面列出常見的記憶體流失問題產生原因:
Time of Update: 2018-07-25
轉載Reactor and Proactor的內容 系統I/O 可分為阻塞型, 非阻塞同步型以及非阻塞非同步型[1, 2]. 阻塞型I/O意味著控制權只到叫用作業結束了才會回到調用者手裡. 結果調用者被阻塞了, 這段時間了做不了任何其它事情. 更鬱悶的是,在等待IO結果的時間裡,調用者所線上程此時無法騰出手來去響應其它的請求,這真是太浪費資源了。拿read()操作來說吧, 調用此函數的代碼會一直僵在此處直至它所讀的socket緩衝中有資料到來.
Time of Update: 2018-07-25
struts2+ibatis+json實現快速java web2.0程式開發 用struts2基本上做完了公司的一個項目,程式開發完以後總是總結一下的,之前的方案是struts2+spring+dwr這三種架構的組合,資料庫操作用的Spring中的JdbcTemplate,一直對Hibernate不喜歡,以前在Hibernate 2的時候用它總報out of
Time of Update: 2018-07-25
import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; public class T { public static
Time of Update: 2018-07-25
情境簡單,其實就是在做WEB請求的時候,處理的結果需要同時通知到一個第三方伺服器,通知後再把結果返回給用戶端。 現在這個通知只是一個簡單通知,如果直接加在用戶端請求裡面,用戶端會在請求第三方伺服器時堵塞。另外為了用戶端不能逾時,所以通知失敗後也不敢多次請求。 這裡可以使用定製任務來解決這個問題,一個用戶端請求後產生一個定製的任務,然後服務後台進行多線程的非同步處理,這樣就會大大減少用戶端的請求時間,同樣最大程度保證這個通知是及時成功給第三方的。
Time of Update: 2018-07-25
1. ArrayList概述: ArrayList 是一個數組隊列,相當於 動態數組。與Java中的數組相比,它的容量能動態增長。它繼承於AbstractList,實現了List, RandomAccess, Cloneable, java.io.Serializable這些介面。ArrayList 繼承了AbstractList,實現了List。它是一個數組隊列,提供了相關的添加、刪除、修改、遍曆等功能。ArrayList
Time of Update: 2018-07-25
Arrays.asList() List<String> list = Arrays.asList(arr); Arrays.asList(arr)返回的list中的一個內部類—java.util.Arrays.ArrayList而不是—java.util.ArrayList這個類包含set(), get(), contains() 方法,但是不支援添加和移除元素。 private static class ArrayList<E> extends
Time of Update: 2018-07-25
一、其實很簡單:Double dou = 3000.533dou = (double)Math.round(dou*100)/100其中dou是變數,很簡單吧,我們大多數人都知道Math.round()方法,可是我卻沒想到保留兩位小數就是先乘以100再除以100.同理保留N位小數就不用說了吧二、第二種方法double d = 111231.5585; BigDecimal b = new BigDecimal(f); double df = b.setScale(2,
Time of Update: 2018-07-25
1. 代碼 2.Java中數字類型的轉換法則 test1中看似除數中的所有的因子都被約掉了,只剩下了1000。但實際的輸出卻是5,而不是我們期望的1000。究其原因,是因為MICROS_PER_DAY按int類型進行的計算,而計算的結果是86400000000,已經超出了int類型的最大值,即溢出了(因int為32位,2^31-1=2147483647),24*60*60*1000*1000最後的結果是500654080(見程式中的print1的輸出)。
Time of Update: 2018-07-25
概要 單例模式是最簡單的設計模式之一,但是對於Java的開發人員來說,它卻有很多缺陷。在本月的專欄中,David Geary探討了單例模式以及在面對多線程(multithreading)、類裝載器(classloaders)和序列化(serialization)時如何處理這些缺陷。
Time of Update: 2018-07-25
輸入一個自然數N(2≤N≤9),要求輸出如下的魔方陣,即邊長為N*N,元素取值為1至N*N,1在左上方,呈順時針方向依次放置各元素。 N=3時: 1 2 3
Time of Update: 2018-07-25
A new day is coming......預備知識 進入學習java web service預先需要瞭解以下知識點,主要是有關xml和web service基礎的,最好瞭解一下這些技術的發展曆史、之間的關係 xml概念、使用場合 xsl/xslt概念 java xml parser: DOM/SAX,概念、使用方法 web service概念,現狀 現行標準:SOAP, WSDL, UDDI, ebXML java
Time of Update: 2018-07-25
轉自:http://hi.baidu.com/zhy65991/blog/item/0a663172b039321a8601b0e4.html 通常,使用的密碼編譯演算法 比較簡便高效,密鑰簡短,加解密速度快,破譯極其困難。本文介紹了 MD5/SHA1,DSA,DESede/DES,Diffie-Hellman的使用。 第1章基礎知識 1.1. 單鑰密碼體制
Time of Update: 2018-07-25
Java語言中抽取Office、PDF的四件兵器 很多人問到如何抽取word、excel、pdf等檔案,在這裡我總結一下抽取word、pdf的幾種方法。 1、用jacob. 其實jacob是一個bridage,串連java和com或者win3
Time of Update: 2018-07-25
package com.kun.util; import java.io.BufferedReader;import java.io.InputStreamReader; public class TestOSPath { static Process process; public
Time of Update: 2018-07-25
今天在修改程式的時候,發現一個小細節的問題,對此進行了總結下: 一個簡單的例子如下: ArrayList<Integer> list=new ArrayList<Integer>(); Long id=10006L; list.add(10006); System.out.println(list.contains(id)); -------------------- 運行後,列印是false。
Time of Update: 2018-07-25
前面的文章介紹了比較簡單的Request/Subscribe模式, 這篇文章介紹更為經典的Publish/Subscribe通訊模式用來ZeroMQ的實現,其通訊方式如下圖: 用戶端(subscriber)向伺服器(publisher)訂閱訊息,然後伺服器可以將訊息推送到所有訂閱了訊息的用戶端,這裡也可以理解為廣播吧。。。。 好了,閑話不多說了,直接上用ZeroMQ實現這種通訊模式的代碼吧: (1)服務端(publisher):
Time of Update: 2018-07-25
I read a really, really interesting article on memory management strategies for the Erlang VM. It was written as a thesis by Jesper Wilhelmsson I thought it might be nice to discuss the differences
Time of Update: 2018-07-25
都快趕上每年一貼了,年年都有孩子們問我怎麼在java程式裡面發郵件,特別是html格式的郵件,在這裡貼個例子吧: maven裡面引入javamail <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version&