經典java面試題及答案
1.基本數據類型。
基本數據類型有四類八種
整形:byte short int long
浮點型:float double
字符型:char
布爾型:boolean
2.編碼轉換,把GB2312的字符串轉換成ISO8859-1。
String str = "abcd";
str = new String(str.getBytes("GB2312"), "ISO8859_1");
3.String和StringBuffer有什么區別,"=="和equals()有什么區別。
char能不能放下一個中文字符,為什么?
(1)本質上的區別是:String是不可變類(immutable),而StringBuffer是可變類。
StringBuffer是可以改變字符串長度的,用append("str")的方法可以不斷增加內容,
而String則不可以,并且相同的字符串對象是相同的地址引用,
若要String改變值,需要改變String變量的引用(指向新的對象)。
(2)== 是對引用進行判斷,對內存地址的判斷
equals()是判斷引用的值是否相等,對實際存儲的值的判斷
內存地址相同的值一定相同,但值相同的內存地址就不一定相同
(3)char可以放下一個中文字符,因為java采用的是unicode編碼,一個字符為兩個字節。
4.寫一個字符串反轉的方法,把“abcdefg”轉換成“gfedcba”。
String str = "abcdefg";
//方法一:利用StringBuffer的reverse()方法實現
public static String reverse2(String str) {
StringBuffer sb = new StringBuffer(str);
sb.reverse().toString();
return sb.toString();
}
//方法二:
public static String reverse(String str) {
if (str == null) {
throw new NullpointerException();
}
return (new StringBuffer(str)).reverse().toString();
}
//方法三:參照StringBuffer的reverse()方法
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();
}
5.替換字符串,把“abc.abc.abc”替換成“abc/abc/abc”。
String rep = "abc.abc.abc";
String rep2 = rep.replaceAll("\\\\.", "/");
//由于.是特殊字符,需要加上\\\\轉義,否則全部轉換成/了
6.類型轉換,把int類型的“123456”轉換成String后再轉換為int,方法越多越好。
int i = 123456;
將整數i轉換成字串 s
1.) String s = String.valueOf(i);
2.) String s = Integer.toString(i);
3.) String s = "" + i;
將字串 s 轉換成整數 i
1.)int i = Integer.parseInt(s);
2.)int i = Integer.parseInt(s,10);//int radix為進制
3.)int i = Integer.valueOf(s).intValue();
注: double, float, long 轉換的方法大同小異.
7.日期處理,取得從1970到現在的毫秒數,格式為yyyy-MM-dd-HH:mm:ss再轉換成String輸出。
//獲取當前系統的時間new
java.util.Date date = new java.util.Date();
//取得從1970年到現在的毫秒數
long now = date.getTime();
//格式化日期
java.text.SimpleDateFormat df = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//轉為字符串
String dateStr = df.format(date);
8.io文件操作,指定一個文件夾,C:\\temp\\test,
判斷是否存在,存在則列出其下所有文件名,包括子目錄以及下面的文件,不存在則新建該文件夾。
【經典java面試題及答案】相關文章:
java面試題及答案10-03
Java的面試題和答案10-25
Java面試題和答案08-06
java面試題(2)08-13
java面試題(3)06-19
Java框架面試題09-03
Java面試題集(2)10-01
瞬聯java面試題09-23
java前端開發面試題09-22
10個經典的Java面試題集合09-20