1.第一題(觀察打印效果)
public class StringDemo { public static void main(String[] args) { //s1和s2雖然內(nèi)容相同,但是確實(shí)創(chuàng)建了兩個(gè)不同的堆內(nèi)存空間,也有兩個(gè)棧內(nèi)存 String s1 = new String("java"); StringBuffer s2 = new StringBuffer("java"); String text1 = function1(s1); StringBuffer text2 = function2(s2); System.out.PRintln(text1 + text2); } public static String function1(String text) { return text.replaceAll("j","1"); } /** * StringBuffer append(char c) * 將 char 參數(shù)的字符串表示形式追加到此序列 */ public static StringBuffer function2(StringBuffer text) { return text.append("c"); }}打印結(jié)果:1avajavac2.第二題
public class NumberDemo { public static void main(String[] args) { /** * 2.任取一個(gè)四位數(shù)字組成的四位正整數(shù), * 把其每位上的數(shù)字排成最大值和最小值(也是四位數(shù))相減剛好還是這個(gè)數(shù), * 求這個(gè)四位正整數(shù) */ //1.首先開始循環(huán)找尋這個(gè)四位正整數(shù) //2.拿到這個(gè)數(shù),先分成個(gè),十,百,千四位數(shù)字 //3.先進(jìn)行從小到大排序(冒泡) //4.進(jìn)行組裝最大值和最小值 //5.驗(yàn)證,最小值首數(shù)字應(yīng)不為0 //6.符合要求即輸出 for(int number=1000;number<10000;number++) { int a = number%10; //拿到個(gè)位 int b = (number%100-a)/10; //拿到十位 int d = number/1000; //拿到千位 int c = number/100-d*10;//拿到百位 int[] arraySort = sortNumber(a,b,c,d); //冒泡排序 int minNumber = arraySort[3]*1 + arraySort[2]*10 + arraySort[1]*100 + arraySort[0]*1000; int maxNumber = arraySort[0]*1 + arraySort[1]*10 + arraySort[2]*100 + arraySort[3]*1000; if((minNumber/1000)!=0&&((maxNumber-minNumber)==number)) { //進(jìn)行驗(yàn)證 System.out.println("滿足條件的四位數(shù)為:" + number); } } } public static int[] sortNumber(int a,int b,int c,int d) { int[] arrayNumber = {a,b,c,d}; int temp; for(int j=1;j<arrayNumber.length;j++) { for(int i=0;i<arrayNumber.length;i++) { if(arrayNumber[i]>arrayNumber[j]) { temp = arrayNumber[i]; arrayNumber[i] = arrayNumber[j]; arrayNumber[j] = temp; } } } return arrayNumber; }}打印結(jié)果:滿足條件的四位數(shù)為:61743.第三題
package BydDemo;/** * 3.利用Java寫一個(gè)方法用于保存Txt文件 * */import java.io.File;import java.io.FileOutputStream;import java.io.IOException;public class BydDemo01 { public static void main(String[] args) { String fileName = "/1.txt"; String content = "利用Java寫一個(gè)方法用于保存Txt文件"; if(saveFile(fileName,content)) { System.out.println("寫入保存成功!"); } else{ System.out.println("寫入保存失敗!"); } } public static boolean saveFile(String fileName,String content) { String path = "E:/testFolder"; boolean success = true; File file = new File(path + fileName); //文件路徑 FileOutputStream fos = null; if(!file.getParentFile().exists()) { //此文件的父文件夾是否存在 file.getParentFile().mkdirs(); //創(chuàng)建父文件夾 } try{ file.createNewFile(); //創(chuàng)建新文件 fos = new FileOutputStream(file); byte[] b = content.getBytes(); //把字符串轉(zhuǎn)換為字節(jié)數(shù)組 fos.write(b); //進(jìn)行寫操作 } catch(Exception e) { success = false; e.printStackTrace(); } finally { if(fos!=null) { try { fos.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return success; }}打印結(jié)果:寫入保存成功!4.第四題
package BydDemo;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class BydDemo02 { /* * 4.編寫一個(gè)讀取某個(gè)Txt文件的內(nèi)容,并把它輸出到控制臺(tái), * 假如某個(gè)a.txt文件,里面有三行內(nèi)容,打印到控制臺(tái)也有三行 * 111111 * 2222222 * 33333 */ public static void main(String[] args) { // TODO Auto-generated method stub printFile("/a.txt"); } public static void printFile(String fileName) { String path = "E:/testFolder"; String file = path + fileName; FileReader fr = null; BufferedReader buff = null; try { fr = new FileReader(file); buff = new BufferedReader(fr); String s = null; while((s = buff.readLine())!=null) { System.out.println(s); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally{ if(fr!=null) { try { fr.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(buff!=null) { try { buff.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }}打印結(jié)果:111111 2222222333335.第五題
package BydDemo;public class BydDemo06 { /** * 5.傳入一個(gè)數(shù)字?jǐn)?shù)組,返回?cái)?shù)字之和,如果數(shù)字是5則跳過(guò)不累加, * 如果數(shù)字大于8就停止累加,返回結(jié)果;傳入[1,3,5,9,1] = 4; * [1,3,5,2,9,1] = 6; */ public static void main(String[] args) { // TODO Auto-generated method stub int[] array1 = {1,3,5,9,1}; //聲明兩個(gè)數(shù)組 int[] array2 = {1,3,5,2,9,1}; System.out.println("第一個(gè)數(shù)組之和:" + addAll(array1)); System.out.println("第二個(gè)數(shù)組之和:" + addAll(array2)); } public static int addAll(int[] arrayNumber) { int sum = 0; for(int i=0;i<arrayNumber.length;i++) { //遍歷數(shù)組 if(arrayNumber[i]==5) { continue; //跳過(guò)此次循環(huán),不累加 } if(arrayNumber[i]>8) { break; //終止循環(huán)體 } sum += arrayNumber[i]; } return sum; }}打印結(jié)果:第一個(gè)數(shù)組之和:4第二個(gè)數(shù)組之和:66.第六題
package BydDemo;import java.util.ArrayList;import java.util.List;import java.util.ListIterator;public class BydDemo07 { /** * 6.傳入一個(gè)List,返回List中是數(shù)字的集合: * List中包含"a23","1","2","c"; * 返回"1","2" */ public static void main(String[] args) { // TODO Auto-generated method stub //1.ArrayList用數(shù)組存儲(chǔ)元素,且數(shù)組是動(dòng)態(tài)創(chuàng)建 //2.若元素個(gè)數(shù)超過(guò)數(shù)組容量,就創(chuàng)建一個(gè)更大的新數(shù)組,并將當(dāng)前數(shù)組中的所有元素復(fù)制到新數(shù)組中 //3.可通過(guò)下標(biāo)隨機(jī)訪問(wèn)元素。除在末尾處之外,不能在其他位置插入或刪除元素 List<String> arrayList1 = new ArrayList<String>(); //創(chuàng)建數(shù)組鏈表 arrayList1.add("a23"); //添加元素 arrayList1.add("1"); arrayList1.add("2"); arrayList1.add("c"); List<String> arrayList2 = getNumberList(arrayList1); //篩選出數(shù)字,并放入ArrayList集合返回 printArrayList(arrayList2); //打印ArrayList集合中的元素 } public static List<String> getNumberList(List<String> list) { //篩選 // TODO Auto-generated method stub List<String> arrayList2 = new ArrayList<String>(); //存放滿足條件的元素 for(int i=0;i<list.size();i++) { //E get(int index) //返回此列表中指定位置上的元素 if(isNumeric(list.get(i))) { //判斷是否為數(shù)字 arrayList2.add(list.get(i)); } } return arrayList2; } public static void printArrayList(List<String> list) { //打印元素 // TODO Auto-generated method stub ListIterator< String> listIterator = list.listIterator(); //實(shí)例化ListIterator System.out.println("打印集合中的數(shù)字:"); while(listIterator.hasNext()) { //若有下一個(gè)元素 System.out.print(listIterator.next() + " "); //返回下一個(gè)元素 } } public static boolean isNumeric(String str) { //判斷輸入的字符串為數(shù)字 // TODO Auto-generated method stub for(int i=0;i<str.length();i++) { //遍歷字符串 char ch = str.charAt(i); //取出單個(gè)字符 if(!Character.isDigit(ch)) { //判斷單個(gè)字符屬于數(shù)字,只要一個(gè)字符不符合就是false return false; } } return true; //整個(gè)字符串都滿足返回true }}打印結(jié)果:打印集合中的數(shù)字:1 27.第七題
package BydDemo;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.ListIterator;import java.util.Map;import java.util.Set;public class BydDemo08 { /** * 7.傳入一個(gè)Map,返回Map中值是數(shù)字的key集合,傳入 * [a:1],[b:"ad"],[c:"3"]返回“a”,“c” */ public static void main(String[] args) { // TODO Auto-generated method stub Map<String, String> hashMap1 = new HashMap<String,String>(); //創(chuàng)建HashMap hashMap1.put("a", "1"); //添加元素 hashMap1.put("b", "ad"); hashMap1.put("c", "3"); List<String> arrayList = getNumberMap(hashMap1); printArrayList(arrayList); //打印ArrayList集合中的元素 } public static void printArrayList(List<String> arrayList) { //打印輸出 // TODO Auto-generated method stub ListIterator<String> listIterator = arrayList.listIterator(); //實(shí)例化ListIterator System.out.println("輸出符合的結(jié)果:"); while(listIterator.hasNext()) { System.out.print(listIterator.next() + " "); } } public static List<String> getNumberMap(Map<String, String> hashMap) { //判斷Map中值是數(shù)字,然后把key傳入到ArrayList中 // TODO Auto-generated method stub List<String> arrayList = new ArrayList<String>(); //先創(chuàng)建要盛放的ArrayList Set<String> set = hashMap.keySet(); //拿到Map的鍵值對(duì) Iterator<String> iterator = set.iterator(); while(iterator.hasNext()) { String key = iterator.next(); String value = hashMap.get(key); //使用Iterator遍歷,有鍵位拿到值 if(isNumeric(value)) { //進(jìn)行判斷是否為數(shù)字 arrayList.add(key); } } return arrayList; } public static boolean isNumeric(String str) { //判斷字符串為數(shù)字 // TODO Auto-generated method stub for(int i=0;i<str.length();i++) { //遍歷字符串 char ch = str.charAt(i); //遍歷每個(gè)字符 if(!Character.isDigit(ch)) { //只要有一個(gè)不是數(shù)字則返回false return false; } } return true; }}打印結(jié)果:輸出符合的結(jié)果:a c新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注