您好,登錄后才能下訂單哦!
這篇文章主要講解了“大數據面試題有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“大數據面試題有哪些”吧!
1、數據類型之間的轉換:
1)如何將數值型字符轉換為數字?
2)如何將數字轉換為字符?
3)如何取小數點前兩位并四舍五入? 【基礎】
答:
1)調用數值類型相應包裝類中的方法parse***(String)或valueOf(String)即可返回相應基本類型或包裝類型數值;
2)將數字與空字符串相加即可獲得其所對應的字符串;另外對于基本類型數字還可調用String 類中的valueOf(…)方法返回相應字符串,而對于包裝類型數字則可調用其toString()方法獲得相應字符串;
3)可用該數字構造一java.math.BigDecimal 對象,再利用其round()方法進行四舍五入到保留小數點后兩位,再將其轉換為字符串截取最后兩位。
public class OuterClass {
private double d1 = 1.0;
//insert code here
}
A. class InnerOne{
public static double methoda() {return d1;}
}
B. public class InnerOne{
static double methoda() {return d1;}
}
C. private class InnerOne{
double methoda() {return d1;}
}
D. static class InnerOne{
protected double methoda() {return d1;}
}
E. abstract class InnerOne{
public abstract double methoda();
}
答:答案為C、E;說明如下:
1)靜態內部類可以有靜態成員,而非靜態內部類則不能有靜態成員;故A、B錯;
2)靜態內部類的非靜態成員可以訪問外部類的靜態變量,而不可訪問外部類的非靜態變量;故D 錯;
3)非靜態內部類的非靜態成員可以訪問外部類的非靜態變量;故C 正確。
答:可用字符串構造一StringBuffer 對象,然后調用StringBuffer 中的reverse方法即可實現字符串的反轉,調用replace 方法即可實現字符串的替換。
答:示例代碼如下:
String s1 = "你好";
String s2 = new String(s1.getBytes("GB2312"), "ISO-8859-1");
答:函數代碼如下:
public String[] split(String str, int chars){
int n = (str.length()+ chars - 1)/chars;
String ret[] = new String[n];
for(int i=0; i<n; i++){
if(i < n-1){
ret[i] = str.substring(i*chars , (i+1)*chars);
}else{
ret[i] = str.substring(i*chars);
}
}
return ret;
}
答:可用字符串構造一StringBuffer 對象,然后調用StringBuffer 中的reverse方法即可實現字符串的反轉,調用replace 方法即可實現字符串的替換。
1)如何取得年月日、小時分秒?
2)如何取得從1970 年到現在的毫秒數?
3)如何取得某個日期是當月的最后一天?
4)如何格式化日期?【基礎】
答:
1)創建java.util.Calendar 實例(Calendar.getInstance()),調用其get()方法傳入不同的參數即可獲得參數所對應的值,如:calendar.get(Calendar.YEAR);//獲得年
2)以下方法均可獲得該毫秒數:
Calendar.getInstance().getTimeInMillis();System.currentTimeMillis();
3)示例代碼如下:
Calendar time = Calendar.getInstance();
time.set(Calendar.DAY_OF_MONTH,
time.getActualMaximum(Calendar.DAY_OF_MONTH));
答:assertion(斷言)在軟件開發中是一種常用的調試方式,很多開發語言中都支持這種機制。一般來說,assertion 用于保證程序最基本、關鍵的正確性。assertion 檢查通常在開發和測試時開啟。為了提高性能,在軟件發布后, assertion 檢查通常是關閉的。在實現中,斷言是一個包含布爾表達式的語句,在執行這個語句時假定該表達式為true;如果表達式計算為false,那么系統會報告一個Assertionerror。
斷言用于調試目的:
assert(a > 0); // throws an Assertionerror if a <= 0
斷言可以有兩種形式:
assert Expression1 ;
assert Expression1 : Expression2 ;
Expression1 應該總是產生一個布爾值。
Expression2 可以是得出一個值的任意表達式;這個值用于生成顯示更多調試信息的String 消息。
斷言在默認情況下是禁用的,要在編譯時啟用斷言,需使用source 1.4 標記:
javac -source 1.4 Test.java
要在運行時啟用斷言,可使用-enableassertions 或者-ea 標記。
要在運行時選擇禁用斷言,可使用-da 或者-disableassertions 標記。
要在系統類中啟用斷言,可使用-esa 或者-dsa 標記。還可以在包的基礎上啟用或者禁用斷言。可以在預計正常情況下不會到達的任何位置上放置斷言。斷言可以用于驗證傳遞給私有方法的參數。不過,斷言不應該用于驗證傳遞給公有方法的參數,因為不管是否啟用了斷言,公有方法都必須檢查其參數。不過,既可以在公有方法中,也可以在非公有方法中利用斷言測試后置條件。另外,斷言不應該以任何方式改變程序的狀態。
答:當JAVA 程序違反了JAVA 的語義規則時,JAVA 虛擬機就會將發生的錯誤表示為一個異常。違反語義規則包括2 種情況。一種是JAVA 類庫內置的語義檢查。例如數組下標越界,會引發IndexOutOfBoundsException;訪問null 的對象時會引發NullPointerException。另一種情況就是JAVA 允許程序員擴展這種語義檢查,程序員可以創建自己的異常,并自由選擇在何時用throw 關鍵字引發異常。所有的異常都是java.lang.Thowable 的子類。
答:error 表示系統級的錯誤和程序不必處理的異常,是恢復不是不可能但很困難的情況下的一種嚴重問題;比如內存溢出,不可能指望程序能處理這樣的情況;exception 表示需要捕捉或者需要程序進行處理的異常,是一種設計或實現問題;也就是說,它表示如果程序運行正常,從不會發生的情況。
感謝各位的閱讀,以上就是“大數據面試題有哪些”的內容了,經過本文的學習后,相信大家對大數據面試題有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。