Time of Update: 2018-12-05
Java字串排列演算法 題目:現有ABCDE 5個球 構成的排列組合 可重複抽取 最多取到16個 共有多少種組合方式? 比如:取1個球可以構成的組合有 A B C D E 共5種,取2個球可以構成的組合有 5+4+3+2+1=15種 (BA 和 AB 這種重複的排列 算成一種) AA AB AC AD AE BB BC BD BE CC CD CE DD DE EE 取 3 個球可以構成的組合是 (5+4+3+2+1)+(4+3+2+1)+(3+2+1)+
Time of Update: 2018-12-05
直接上代碼public class TestEnum { public static void main(String[] args) {MyEnum myEnum=MyEnum.East;System.out.printf(myEnum.GetDes());}}enum MyEnum{East("東方"),West("西方"),South("南方"),North("北方");private String des;private MyEnum(String string){ des=
Time of Update: 2018-12-05
一、標識符 概念:JAVA裡面我們可以給他取名字的(變數、類、方法等等)就是標識符: 注意:1、標識符只能包含字母、數字、底線還有貨幣符號$ 2、只能以字母、底線和貨幣符號開頭二、變數 概念:JAVA中儲存資料的最小單元 擴充:電腦中儲存資料的最小單元是位(一個0或是一個1就是一位) 8bite = 1byte(位元組) 1024byte = 1KB 1024kb = 1MB
Time of Update: 2018-12-05
一、物件導向和面向過程的區別 面向過程:它所考慮的是過程和步驟,比如說開車去深圳我們要考慮的是怎麼去也就是說:what to do 物件導向:它所考慮的是有幾個對象,比如開車去深圳我們要考慮的就是有幾個對象,也就是說:how to
Time of Update: 2018-12-05
1、介面 • 介面是一種規範,是一種規則,它只給出了方法的樣子,規定你要實現哪些方法,而不給出方法的實現,讓介面的實作類別去實現這些方法,但是對於不同的實作類別來說,對方法的實現可以完全不同。 • 介面的實作類別如果實現了某一個介面,那麼必須實現介面中定義的所有的待實現的方法。如果你不想要實現方法,那麼實作類別必須定義為抽象類別,不想實現的方法必須定義為抽象方法。 •
Time of Update: 2018-12-05
此篇部落客要來自51CTO部落格:http://developer.51cto.com/art/201204/332100.htm 原篇文章存在幾處錯誤,此篇是經過實驗修正版! 根據約定,在使用java編程的時候應儘可能的使用現有的類庫,當然你也可以自己編寫一個排序的方法,或者架構,但是有幾個人能寫得比JDK裡的還 要好呢?使用現有的類的另一個好處是代碼易於閱讀和維護,這篇文章主要講的是如何使用現有的類庫對數組和各種Collection容器進行排序,(文章中的一部分例子來自《Java
Time of Update: 2018-12-05
此篇博文是總結一些Java面試題,以張孝祥老師的《Java面試寶典》為主 1、&與&&的區別 1)&和&&都可以用作邏輯與的運算子,表示邏輯與(and),當運算子兩邊的運算式的結果都為true時,整個運算結果才為true,否則,只要有一方為false,則結果為false。 2)&&還具有短路的功能,即如果第一個運算式為false,則不再計算第二個運算式,例如,對於if(str!=null&&!str.equals
Time of Update: 2018-12-05
此篇博文主要源自網路xiaozhen的天空的部落格:http://xiaozhen1900.blog.163.com/blog/static/1741732572011325111945246/
Time of Update: 2018-12-05
1、Runnable介面源碼:1 public interface Runnable {2 public abstract void run();3 } 2、Thread類與Runnable介面的繼承關係1 public class Thread implements Runnable{2 3 } Runnable介面僅有一個run()方法,Thread類實現了Runnable介面,所以,Thread類也實現了Runnable介面。 3、建構函式1 public
Time of Update: 2018-12-05
Java單例模式概念: java中單例模式是一種常見的設計模式,單例模式分三種:懶漢模式單例、餓漢模式單例、登記模式的那裡三種。 單例模式有一下特點: 1、單例類只能有一個執行個體。 2、單例類必須自己自己建立自己的唯一執行個體。 3、單例類必須給所有其他對象提供這一執行個體。 單例模式確保某個類只有一個執行個體,而且自行執行個體化並向整個系統提供這個執行個體。1.餓漢式單例類 1 //餓漢式單例類.在類初始化時,已經自行執行個體化 2 public class
Time of Update: 2018-12-05
Java提供了線程類Thread來建立多線程的程式。其實,建立線程與建立普通的類的對象的操作是一樣的,而線程就是Thread類或其子類的執行個體對象。每個Thread對象描述了一個單獨的線程。要產生一個線程,有兩種方法: ◆需要從Java.lang.Thread類派生一個新的線程類,重載它的run()方法;
Time of Update: 2018-12-05
Java體系和一些基本概念 原文連結:http://www.189works.com/article-42350-1.html Java平台的結構圖: JVM與JRE、JDK關係? JVM:Java Virtual Machine(Java虛擬機器),負責執行符合規範的Class檔案 JRE: Java Runtime Environment (java運行環境),包含JVM和類庫 JDK: Java Development
Time of Update: 2018-12-05
java.io.Serializable淺析 Java API中java.io.Serializable介面源碼:1 public interface Serializable {2
Time of Update: 2018-12-05
Java記憶體管理:深入Java記憶體地區 本文引用自:深入理解Java虛擬機器的第2章內容 Java與C++之間有一堵由記憶體動態分配和垃圾收集技術所圍成的高牆,牆外面的人想進去,牆裡面的人卻想出來。 概述: 對於從事C和C++程式開發的開發人員來說,在記憶體管理領域,他們既是擁有最高權力的皇帝,又是從事最基礎工作的勞動人民—既擁有每一個對象的“所有權”,又擔負著每一個對象生命開始到終結的維護責任。 對於Java程式員來說,在虛擬機器的自動記憶體管理機制的協助下,不再需要為每一個ne
Time of Update: 2018-12-05
一、封裝 功能:其實就是實現代碼的複用,屏蔽一些細節 比如下面這個例子: 我在類Person裡面封裝了一個方法public void pname(){}這樣的話在main方法裡面就不用重複使用System.out.println();這句話了,避免了代碼的重複使用,成程式看起來比較簡潔public class test{ public static void main(String agrs[]){ Person p1 = new Person();
Time of Update: 2018-12-05
JAVA的一些簡單的常用類介紹1、String類 代表不可變的字串序列 String str1 = new (“hello”); 和 String str = “hello”的區別 前者是建立一個對象儲存在堆當中,而後者的字串是放在靜態一個記憶體地區當中 思考:上面的str1和str2相等嗎?為什嗎? 瞭解String類當中的各種構造方法,記下String類中常用的方法 比如:charAt(int index) 返回在index位置出的字元endsWith(String
Time of Update: 2018-12-05
Collection容器1、首先我們要瞭解為什麼JAVA中要有容器? 我們知道數組的長度一旦指定,程式在執行過程中就不能改變,正是因為數組有這樣的缺陷,所以才出現就(collection)容器,容器的大小可以任意改變,容器的大小就是根據你實際放入了多少的資料而相應的變大。2、容器中包括Set
Time of Update: 2018-12-05
Q.請寫一段代碼來計算給定文本內字元“A”的個數。分別用迭代和遞迴兩種方式。A.假設給定文本為”AAA rating”。迭代方式就很直觀,如下:View Code 1 public class Iteration { 2 3 public int countA(String input) { 4 if (input == null || input.length( ) == 0) { 5 return 0; 6 } 7 8
Time of Update: 2018-12-05
下面的程式碼片段的輸出是什嗎?View Code 1 Object s1 = new String("Hello");2 Object s2 = new String("Hello");3 4 if(s1 == s2) {5 System.out.println("s1 and s2 are ==");6 }else if (s1.equals(s2)) {7 System.out.println("s1 and s2 are equals()");8 }A2.輸出結果是:s1
Time of Update: 2018-12-05
/* * 對錶單上傳的檔案進行改名 */ private String getNewFilename(String s){ int i = s.indexOf("."); String s1 = s.substring(i+1,s.length()); java.util.Date today = new java.util.Date(); String str ="";