標籤:func test bsp def 建立 預設值 映射 預設 end
1.Java常見的注釋有哪些,文法是怎樣的?
1)單行注釋用//表示,編譯器看到//會忽略該行//後的所文本
2)多行注釋/* */表示,編譯器看到/*時會搜尋接下來的*/,忽略掉/* */之間的文本。
3)文檔注釋用/** */表示,是java特有的注釋,其中注釋內容可以被JDK提供的工具 javadoc 所解析,產生一套以網頁檔案形式體現的該程式的說明文檔。
1)單行注釋。 // 注釋的內容
2)多行注釋。 /* 注釋的內容 */
3)文檔注釋。 /** 注釋的內容 */
2.java常見的運算子都有哪些?
1)算術運算子:+,—,*,/,%,++,--
2)關係運算子:等於(==)、不等於(!=)、大於(>)、大於等於(>=)、小於(<)、小於等於(<=)
3)邏輯運算子:邏輯與(&&)、邏輯或(||)、邏輯非(!)
3.java的基礎資料型別 (Elementary Data Type)有哪些?
byte 整形 short 短整形 int 整數類型 long 長整型 boolean 布爾類型
char 字元型(單個字元) float 單精確度浮點型 double 雙精確度浮點型
4 請寫3種if選擇結構的文法與執行流程
一.基本if結構:
if(判斷條件){
//代碼塊1
}else{
//代碼塊2
}
先判斷if( )中的條件如果為true就執行代碼塊1,如果為false則執行else內的代碼塊2
三.多重:
if(判斷條件1){
//代碼塊1
}else if(判斷條件2){
//代碼塊2
}else{
//代碼塊3
}
1)先判斷if( )中的條件如果為true就執行代碼塊1
2)如果不滿足就繼續執行else-if繼續判斷如果為true就執行代碼塊2
3)如果判斷條件1與判斷條件2都為false則執行代碼塊3
四.嵌套:
if(判斷條件1){
//代碼塊1
if(判斷條件2){
//代碼塊2
}else{
//代碼塊3
}
}else{
//代碼塊4
}
1)先判斷最外層if中的判斷條件1如果為true就執行代碼塊1,
2)然後判斷裡面的if中的判斷條件2如果為true就執行代碼塊2如果為false就執行代碼塊3
3)如果最外層的if中的判斷條件1為true直接執行代碼塊4
5.請寫出switch選擇結構的文法,以及執行流程
switch(運算式){
case 常量1:
//代碼塊1;
break;
case 常量2:
//代碼塊2;
break;
......
default:
//代碼塊n;
break;
}
1)先計算並獲得switch後面小括弧裡的運算式或變數的值,然後將計算結果順序與每個case後的常量比較,當二者相等時,執行這個case塊中的代碼
2)當遇到break時,就跳出switch選擇結構,執行switch選擇之後的代碼
3)如果沒有任何一個case後的常量與switch後小括弧中的值相等,則執行switch末尾部分的default塊中的代碼
6.請寫出while do-while文法及特點
1)文法:
while(迴圈條件){
//迴圈操作
}
do{
//迴圈操作
}while(迴圈條件);
2)特點:
while迴圈結構特點:
先判斷,後執行
while迴圈結構如果第一次判斷迴圈條件不滿足,則會直接跳出迴圈,迴圈操作一遍都不會執行
do-while迴圈結構特點:
先執行,再判斷
do-while迴圈結構,迴圈操作至少執行一遍
7.請寫出for迴圈的文法,以及執行流程
文法:
for(運算式1;運算式2;運算式3){
//迴圈體
}
執行流程:
(1)執行初始判斷
(2)進行迴圈條件判斷
(3)根據迴圈條件判斷結果
>如果為true,則執行迴圈體
>如果為false,則退出迴圈
(4)執行迭代部分,改變迴圈變數值
(5)依次重複"條件判斷-->迴圈操作-->改變變數值-->條件判斷......",直到退出for迴圈結構
8.請寫出數組的基本文法,以及基本要素
文法:
1)資料類型[] 數組名 = new 資料類型[數組長度]
2)資料類型[] 數組名 = new 資料類型[]{值1,值2,...值n};
基本要素:
(1)標識符:
和變數一樣,在電腦中,數組也要有一個名稱,稱為標識符,用於區分不同的數組
(2)數組元素:
當給出數組名稱,即數群組識別碼後,要向數組中存放資料,這些資料就稱為數組元素
(3)數組下標:
在數組中為了正確地得到數組的元素,需要對它們進行編號,這樣電腦才能去存取,這個編號就稱為數組下標
(4)元素類型:
儲存在數組中的數組元素應該是同一資料類型
9.如何對數組進行升序降序
方法一:
1)使用Arrays.sort(數組名);進行數組升排序
2)利用文法升序排序後,倒著輸出,則是降序
方法二:
利用迴圈對數組的每一個元素進行比較,較大的值往後移,依次比較並後移,進行升序排序。降序排序反之
10.如何求數組的最大值和最小值?請寫出思路?
1)定義一個變數,初始化為數組中的任意一個元素即可
2)通過迴圈結構內的判斷語句用數組內的每一個元素與之前定義的變數進行比較,如果數組中的某個元素比變數中的大,就將該值賦給變數,求出最大值,最小值反
11.如何想數組插曲元素?請寫出思路
1)定義一個長度為原數組長度+1的數組
2)將原數組的值賦值給新數組
3)找到新數組的插入位置
4)利用迴圈結構使元素後移(倒著移,將前一位賦值給後一位,一直到將要插入的位置)空出要插入的位置
5)給要插入的位置(已空出)賦值
12.雙重for迴圈的文法,以及其特點
文法:
for(運算式1;運算式2;運算式3){
//結構體
for(運算式1;運算式2;運算式3){
//結構體
}
}
//特點:外部迴圈執行一次,內部迴圈執行一圈
13.break和continue分別有什麼用途。
1)break:強制結束本層迴圈,不影響外層迴圈
2)continue:提前結束本次迴圈,繼續執行下一次迴圈,不影響迴圈次數
14.請寫出類和對象的關係
類與對象的關係就如模具和鑄件的關係,類的執行個體化結果就是對象,而對一類對象的抽象就是類。類描述了一組有相同特性( 屬性 ) 和相同行為 ( 方法 ) 的對象。
15.請寫出成員變數和局部變數的區別。
1)在類中位置不同:成員變數:在類中方法外。局部變數:在方法定義中或者方法聲明上。
2)在記憶體中的位置不同:成員變數:在堆記憶體。 局部變數:在棧記憶體。
3)生命週期不同:成員變數:隨著對象的建立而存在,隨著對象的消失而消失。 局部變數:隨著方法的調用而存在,隨著方法的調用完畢而消失。
4)初始化值不同:成員變數:有預設值初始化。局部變數:沒有預設值初始化,必須定義,賦值,然後才能使用。
※局部變數名稱可以和成員變數名稱一樣,在方法中使用的時候,採用的是就近原則。
16.如何定義類的屬性和方法?如何使用類的屬性和方法
定義:
/**
* 這是Manager類
*/
public class Manager {
String username="張三";//定義Manager類的一個屬性
String password=0000; //定義定義Manager類的一個屬性
public String toString(){//類中一個方法
//結構體
return "管理員資訊是:"+username+"\t"+password;//用到Manager類的username屬性
}
}
使用:
1)定義類:使用關鍵字class
2)建立類的對象:使用關鍵字new
3)使用類的屬性和方法:使用"."操作符
17.return 的用途有哪些?return的常用作用有以下兩種
一種是返回參數所用的關鍵字,假如一個有傳回值的方法執行完了之後需要返回一個參數,
樣本: public string functionTest(){
String a = "abc";
return a;
}
那麼這個方法被調用之後就會返回一個值為abc的字串,string result = functionTest();
第二種用法是,代碼執行到此處終止。
比如當代碼執行到某個地方會出現幾種結果,然後其中一種結果就不能執行後續代碼,這時候在那裡加上一個return就可以終止後面的代碼執行。
18.請你描述出物件導向編程的思想?
1)物件導向是一種新興的程式設計方法,或者說它是一種新的程式設計範型,其基本思想是使用對象,類,繼承,封裝,訊息等基本概念來進行程式設計。
2)它是從現實世界中客觀存在的事物(即對象)出發來構造軟體系統,並在系統構造中儘可能運用人類的自然思維方式,強調直接以問題域(現實世界)中的事物為中心來思考問題,認識問題,並根據這些事物的本質特點,把它們抽象地表示為系統中的對象,作為系統的基本構成單位(而不是用一些與現實世界中的事物相關比較遠,並且沒有對應關係的其它概念來構造系統)。這可以使系統直接地映射問題域,保持問題域中事物及其相互關係的本來面貌。
3)物件導向是一種思想,是我們考慮事情的方法,通常表現為我們是將問題的解決按照過程方式來解決呢,還是將問題抽象為一個對象來解決它。很多情況下,我們會不知不覺的按照過程方式來解決它,而不是考慮將要解決問題抽象為對象去解決它。
19.當調用類的帶參方法時應該注意哪些問題?
1)調用帶參方法與調用無參方法的文法相同,但在調用帶參方法時必須傳入實際的參數的值。
2)定義方法和調用方法時把參數分別稱為形式參數和實際參數(形參和實參)。
3)形參的目的是定義方法需要傳入的參數個數和類型。實參是傳遞給方法處理的實際的值。
4)需要注意要先執行個體化對象,再調用方法;實參的類型,數量,順序都要與形參一一對應。
20.請你寫出String字串的方法,以及其用途?
1).length() 字串的長度
2).charAt() 截取一個字元
3).equals()和==
equals()方法比較字串對象中的字元,==運算子比較兩個對象是否引用同一執行個體。
4).indexOf()和lastIndexOf()
indexOf() 尋找字元或者子串第一次出現的地方。
lastIndexOf() 尋找字元或者子串是後一次出現的地方
5).substring() 它有兩種形式
第一種是:String substring(int startIndex)提取startIndex下標以後的字元
第二種是:String substring(int startIndex,int endIndex)提取startIndex下標到endIndex下標的字元(startIndex下標從0開始,endIndex下標從1開始);
6).concat() 串連兩個字串
7).trim() 去掉起始和結尾的空格
8).toLowerCase() 轉換為小寫
9).toUpperCase() 轉換為大寫
10).compareTo()和compareToIgnoreCase() 比較字串
11).public int indexOf(String str,int fromIndex);//從字串的第fromIndex個字元開始檢索str
21.==和equals有什麼區別?
1)==比較的是兩個值的記憶體位址
2)equals方法比較的是兩者實際的值
22.如何使用StringBuffer進行字串拼接,請寫出代碼?
調用append() 可把任何類型資料的字串表示串連到調用的StringBuffer對象的末尾。
例:int a=42;
StringBuffer sb=new StringBuffer(40);
String s=sb.append("a=").append(a).append("!").toString();
第一本的java 的小總結