華為java面試題
在華為的面試中,Java技術員要做好準備了,提前了解面試題目很重要,下面小編已經為你們整理了華為java面試題,希望可以幫到你。
華為java面試題1
1.Error與Exception有什么區別?
error 表示恢復不是不可能但很困難的情況下的一種嚴重問題。比如說內存溢出。不可能指望程序能處理這樣的情況。
exception 表示一種設計或實現問題。也就是說,它表示如果程序運行正常,從不會發生的情況。
2.statement 和preparestatement區別
1)創建時的區別:
Statement stm=con.createStatement();
PreparedStatement pstm=con.prepareStatement(sql);
執行的時候:
stm.execute(sql);
pstm.execute();
2)pstm一旦綁定了SQL,此pstm就不能執行其他的Sql,即只能執行一條SQL命令。 stm可以執行多條SQL命令。
3)對于執行同構的sql(只有值不同,其他結構都相同),用pstm的執行效率比較的高,對于異構的SQL語句,Statement的執行效率要高。
4)當需要外部變量的時候,pstm的執行效率更高.
華為java面試題2
1.short s1 =1; s1 = s1 + 1;有什么錯? short s1 = 1; s1 += 1;有什么錯?
short s1 = 1; s1 = s1 + 1; (s1+1運算結果是int型,需要強制轉換類型) short s1 = 1; s1 += 1;(可以正確編譯)
2.float型float f=3.4是否正確?
不正確。精度不準確,應該用強制類型轉換,如下所示:float f=(float)3.4 或float f = 3.4f 在java里面,沒小數點的默認是int,有小數點的默認是 double;
3.ArrayList和Vector的區別,HashMap和Hashtable的區別。
ArrayList和Vector都是使用數組方式存儲數據,此數組元素數大于實際存儲的數據以便增加和插入元素,它們都允許直接按序號索引元素,但是插入元素要涉及數組元素移動等內存操作,所以索引數據快而插入數據慢,Vector由于使用了synchronized方法(線程安全),通常性能上較ArrayList差。
HashMap是Hashtable的輕量級實現(非線程安全的實現),他們都完成了Map接口,主要區別在于HashMap允許空(null)鍵值(key),由于非線程安全,效率上可能高于Hashtable。
HashMap允許將null作為一個entry的key或者value,而Hashtable不允許。
HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因為contains方法容易讓人引起誤解。 Hashtable繼承自Dictionary類,而HashMap是Java1.2引進的Map interface的一個實現。
最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多個線程訪問Hashtable時,不需要自己為它的方法實現同步,而HashMap 就必須為之提供外同步。
華為java面試題3
1.Java有那些基本數據類型,String是不是基本數據類型,他們有何區別。
Java語言提供了八種基本類型:
六種數字類型(四個整數型,兩個浮點型)
字節型byte 8位 短整型short 16位 整型int 32位
長整型long 64位 單精度float 32位 雙精度double 64位
一種字符類型
字符型char 8位
還有一種布爾型
布爾型:boolean 8位 可存儲"True"和"false"。
String本身就是一個對象而不是基本數據類型,String的變量名是對String類的引用。
2.字符串的操作:
寫一個方法,實現字符串的反轉,如:輸入abc,輸出cba
public static String reverse(String s){
int length=s.length();
StringBuffer result=new StringBuffer(length);
for(int i=length-1;i>=0;i--)
result.append(s.charAt(i));
return result.toString();
}
寫一個方法,實現字符串的替換,如:輸入bbbwlirbbb,輸出bbbhhtccc。 String s = "bbbwlirbbb";
s.replaceAll("wlirbbb","hhtccc");
看了“華為java面試題”