K8S 本地 配置 Local PV 實踐
阿新 • • 發佈:2020-08-11
基礎題目
第一題:需求實現
-
模擬大樂透號碼:
-
一組大樂透號碼由10個1-99之間的數字組成
-
定義方法,列印大樂透號碼資訊
-
-
程式碼實現,效果如圖所示:
-
-
使用陣列保存錄入的號碼
-
-
參考答案:
public class Test1 { public static void main(String[] args) { int[] arr = {10,20,30,40,50, 60,66,70,80,99}; printNum(arr); } public static void printNum(int[] arr) { System.out.println("您的大樂透號碼為:"); for (int i = 0; i < arr.length; i++) { System.out.print(arr[i]+" "); } } }
第二題:需求實現
-
列印撲克牌.
-
程式碼實現,效果如圖所示:
-
開發提示:
-
使用兩個字串陣列,分別儲存花色和點數
-
public class Test2 { public static void main(String[] args) { // 花色陣列 String[] hs = {"黑桃","紅桃","梅花","方片"}; // 點數陣列 String[] ds = {"A","2","3","4", "5","6","7","8","9","10","J","Q","K"}; printCard(hs,ds); } public static void printCard(String[] hs ,String[] ds){ for (int hs_index = 0; hs_index < hs.length; hs_index++) { for (int ds_index = 0; ds_index < ds.length; ds_index++) { // 拼接字串 System.out.print( hs[hs_index] + ds[ds_index]+" "); } // 輸出換行 System.out.println(); } } }
第三題:需求實現
-
模擬在一副牌中,抽取第1張,第5張,第50張撲克牌。
-
程式碼實現,效果如圖所示:
-
參考答案:
public class Test3 { public static void main(String[] args) { // 獲取所有撲克牌 String[] puke = getPuke(); // 抽取指定的三種撲克牌 int num1 = 1; int num2 = 5; int num3 = 50; String[] pk3 = get3(puke , num1 ,num2,num3); // 列印抽取的牌 for (int i = 0; i < pk3.length; i++) { System.out.print(pk3[i] + " "); } } private static String[] getPuke() { String[] colors={"黑色","紅桃","梅花","方塊"}; String[] nums={"A","2","3","4","5","6","7","8","9","10","J","Q","K"}; String[] puke = new String[54]; int index = 0; for (int i = 0; i < colors.length; i++) { for (int j = 0; j < nums.length; j++) { puke[index] = colors[i]+nums[j]; index ++; } } puke[52] = "小王"; puke[53] = "大王"; return puke; } public static String[] get3(String[] puke, int i, int i2, int i3) { String[] pk3 = new String[3]; pk3[0] = puke[i - 1]; pk3[1] = puke[i2 - 1]; pk3[2] = puke[i3 - 1]; return pk3; } }
第四題:需求實現
-
統計字元
-
字元陣列:{'a','l','f','m','f','o','b','b','s','n'}
-
定義printCount方法,統計每個字元出現的次數並列印到控制檯。
-
-
程式碼實現,部分效果如圖所示:
-
開發提示:
-
將數字強制轉換,根據ASCII碼錶轉換為字元。
-
可以定義長度26的陣列,每個元素,對應去儲存每種字元的出現次數,比如0索引儲存a的次數,1索引儲存b的次數,以此類推。
-
-
參考答案:
public class Test4 { public static void main(String[] args) { // 獲取長度100的字元陣列 char[] charArray = {'a','l','f','m','f','o','b','b','s','n'}; // 統計字元陣列中字母出現次數 printCount(charArray); } public static void printCount(char[] charArray) { int[] count= new int[26]; // 對應儲存字母出現的次數 for (int i = 0; i < charArray.length; i++) { int c = charArray[i]; count[c- 97]++; } // 列印字母和次數 for (int i = 0, ch = 97; i < count.length; i++, ch++) { if (count[i] != 0 ) { System.out.println((char) ch + "--" + count[i]); } } } }
第五題:需求實現
-
統計高於平均分的分數有多少個。
-
定義陣列[95, 92, 75, 56, 98, 71, 80, 58, 91, 91]。
-
定義getAvg方法,獲取一個數組中的平均數
-
-
程式碼實現,效果如圖所示:
-
參考答案:
public class Test5 { public static void main(String[] args) { // 獲取隨機分數 int[] score = {95, 92, 75, 56, 98, 71, 80, 58, 91, 91}; // 獲取平均分 int avg = getAvg(score); // 定義計數的變數 int count = 0 ; for (int i = 0; i < score.length; i++) { if (score[i] > avg){ count++; } } System.out.println("高於平均分:"+avg+" 的 個數有" + count+" 個"); } // 獲取平均分的方法 public static int getAvg(int[] arr) { int sum = 0; for (int i = 0; i < arr.length; i++) { sum += arr[i]; } return sum / arr.length; } }
第六題:需求實現
-
定義sym方法,判斷陣列中的元素值是否對稱.
-
程式碼實現,效果如圖所示:
-
開發提示:
-
陣列中元素首尾比較。
-
-
參考答案:
public class Test6 { public static void main(String[] args) { int[] arr = {1,2,3,4,3,2,1}; System.out.println(Arrays.toString(arr) +" 是否對稱:" +sym(arr) ); int[] arr2 = {1,2,3,4,5,2,1}; System.out.println(Arrays.toString(arr2) +" 是否對稱:" +sym(arr2) ); } public static boolean sym(int[] arr) { /* start : 陣列頭 end :陣列尾 */ for (int start = 0 , end = arr.length -1 ; start <= end; start++, end--) { // 如果兩端一旦有元素不等,就返回false if (arr[start] != arr[end]) { return false; } } return true; } }
第七題:需求實現
-
定義equals方法,比較陣列內容是否完全一致。
-
程式碼實現,效果如圖所示:
-
開發提示:
-
長度一致,內容一致,定義為完全一致。
-
-
參考答案:
public class Test7 { public static void main(String[] args) { int[] arr = {1,2,3,4,3,2,1}; int[] arr2 = {1,2,3,4,3,2,1}; System.out.println(" 是否一致:" +equals(arr ,arr2) ); } // 比較陣列的內容 public static boolean equals(int[] arr1, int[] arr2) { // 長度不同,返回false if (arr1.length != arr2.length) { return false; } // for (int i = 0; i < arr1.length; i++) { // arr1[i] 和 arr2[i]比較 /* * 所有元素都相同才相同,也就是隻要有一個不同,這兩個陣列就是不同 */ if (arr1[i] != arr2[i]) { return false; } } return true; } }