---------------------- android培訓 、java培訓 、期待與您交流! ----------------------
while循環 do while循環 for循環:
while循環先判斷在執行,do while循環 先執行一次再判斷。for循環的變量定義在for循環裏面,for循環結束就消失,可以節約內存。
最簡單的死循環 while(true){},for(;;){} for循環的自行條件默認爲true, 還可以用標號給循環起名。
發現有很多行 每行有很多列 ,則可以實用嵌套循環。比如打印九九乘法表
break coutinue:
break 跳出當前循環.只能作用於循環或者switch結構結構。
coutinue 繼續循環,只能作用於循環或者switch結構結構。特點 結束本次循環,繼續 下次循環。
方法(函數)
定義方法可以提高代碼的複用型,方法只有被調用纔會被執行,方法的執行結果給調用者。
格式: 修飾符 返回值類型 方法名(參數類型 參數類型1,參數類型 參數類型2,...)
{
執行語句;
return 返回值;//void 類型沒有返回值,可以省略return;
}
定義方法的時候:1 首先確定方法執行後想要得到什麼樣的結果
2 明確該方法執行過程中是否有未知內容參與 運算
方法的重載: 方法名相同 方法的參數類型和參數個數不同構成重載,與返回類型無關。重載是同一個類中多態的一 種體現形式
數組:同一種類型的集合。其實就是一個容器
格式 數據類型[] 數組名字 = new 數據類型[數組的長度] ;
數據類型 數組名字[] = new 數據類型[數組的長度] ;
數據類型[] 數組名字 = new 數據類型[]{元素1 ,元素2 ....};
數據類型[] 數組名字 = {元素1 ,元素2 ....};
數組 是引用類型.其長度定義好後不可變。
二維數組 格式: 數據類型[][] 數組名 = new[長度][長度];
數據類型[][] 數組名 = {{元素1,元素2},{元素1,元素2},{..},{..}};
數據類型[] 數組名[];
排序:選擇排序:選一個值和每一值比較,滿足條件後交換位置。
冒泡排序: 相鄰兩個值比較大小,滿足條件然後交換位置。
有序數組的折半查找:先查找數組的中間值,然後和需要查找的值比較。如果要查找的值大於得到的中間值,則繼續在大的那一方繼續折半查抄。如果要查找的值小於得到的中間值,則繼續在小的那一方繼續折半查抄。
下面是幾個簡單的例子
public class ThreadTest {
public static void main(String[] args) {
int[] a = { 1, 3, 4, 5, 6, 7, 8, 9, 11, 13, 15, 17, 24, 28, 29, 33 };
int[] b = {1,4,6,8,9,2,3,5,6,8,7,3,6,11,2,33,44,987,55,134,33,78,89,56};
//System.out.println(halfSerach(a, 18));
bubbleSort(b);
//chooseSort(b);
for(int s : b){
System.out.println(s);
}
}
// 選擇排序
public static void chooseSort(int[] array) {
for (int i = 0; i < array.length-1; i++) {
for (int j = i+1; j < array.length ; j++) {
if (array[i] > array[j]) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
}
// 冒泡排序
public static void bubbleSort(int[] array) {
for (int i = 0; i < array.length-1; i++) {
for (int j = 0; j < array.length - i-1; j++) {
if (array[j] > array[j + 1]) {
int temp = array[j];
array[j ] = array[j+1];
array[j+1] = temp;
}
}
}
}
// 有序數組的折半查找
public static int halfSerach(int[] array, int key) {
int min = 0;
int max = array.length - 1;
int mid = (min + max) / 2;
while (key != array[mid]) {
if (key > array[mid]) {
min = mid + 1;
}
if (key < array[mid]) {
max = mid - 1;
}
if (min > max) {
return -1;
}
mid = (min + max) / 2;
}
return mid;
}
}
---------------------- android培訓 、java培訓 、期待與您交流! ----------------------