二维数组
遍历二维数组,按照[元素1, 元素2, 元素3, …]格式输出
public class TestErWeiShuZu{
public static void main(String[] args){
//静态二维数组初始化
int[][]arr = {{4,5,6},{7,8,9},{10,11,12}};
array(arr);
}
public static void array(int[][]arr){
//输出最左边括号
System.out.print("{");
//外层循环 二维数组的元素个数 也就是二维数组的长度 二维数组一共有三个元素 也是一维数组的个数
for(int x = 0 ; x < arr.length ; x ++ ){
System.out.print("{");
//内层循环 控制一维数组元素个数
for(int y = 0 ; y < arr[x].length ; y++){ //一维数组的元素个数 < 一维数组的长度
//求出二维数组的最后一位元素
if(y == arr[x].length-1){
//那么输出二维数组最后一位元素,同时输出最右边大括号
System.out.print(arr[x][y]+"}");
}else{
System.out.print(arr[x][y]+",");
}
}
if(x < arr.length-1 ){
System.out.print(",");
}
}
System.out.print("}");
}
}
经典冒泡排序
请将给定的数组,{10,87,65,34,57} 进行冒泡排序,并将排好序的数组输出到控制台
class TestMaoPao{
public static void main(String[] args){
//静态初始化
int [] arr = {10,87,65,34,57};
//排序前遍历
System.out.println("排序前:");
array(arr);
//换行
System.out.println();
//冒泡排序后
System.out.println("排序后:");
array1(arr);
array(arr);
}
//遍历数组中的元素
public static void array(int [] arr){
//输出左{
System.out.print("{");
for(int x = 0 ;x < arr.length ; x++){
//如果角标等于 数组的长度减1,那么就输出最后一个元素
if(x == arr.length-1){
System.out.print(arr[x]+"}");
}else{
System.out.print(arr[x]+",");
}
}
}
//排序-----冒泡排序的思想:两两比较,大的放后边,比较次数是数组长度-1次
public static void array1(int[] arr){
//外层循环比较次数
for(int x = 0 ; x < arr.length-1 ; x++){
for(int y = 0 ; y < arr.length-1-x ; y ++){ //内层循环比较大小
if(arr[y] > arr[y+1]){
int temp = arr[y];
arr[y] = arr[y+1];
arr[y+1] = temp;
}
}
}
}
}
自定义一个数组 进行逆序
public class TestNiXu{
public static void main(String[] args){
//自定义静态初始化
int [] arr = {12,13,15,16,18,19};
System.out.println("遍历输出一次");
//先遍历一遍
array(arr);
//逆序后的排序:
System.out.println();
System.out.println("逆序后的排序为:");
//调用逆序
array1(arr);
//在遍历一遍
array(arr);
}
//先将逆序前的数组进行遍历出来
public static void array(int[]arr){
//先将左括号进行打印出来
System.out.print("{");
for(int x = 0 ; x < arr.length ; x++){
System.out.print(arr[x]+",");
}
System.out.print("}");
}
//进行逆序排序,用功能实现
public static void array1(int[] arr){
for(int y = 0 ; y <arr.length/2 ;y++){
//进行互换
int temp = arr[y] ;
arr[y]= arr[arr.length-1-y];
arr[arr.length-1-y]= temp;
}
}
}
定义一个数组 输出他的最值 — 返回的是具体值
public class TestMaxZhi{
public static void main(String[] args){
//定义数组
int [] arr = {25,65,14,25,32,47};
System.out.print("数组遍历:"+"\n");
//数组遍历输出
array(arr);
int result = array1(arr);
System.out.println("\n"+"最大值为:"+result);
int result1 = array2(arr);
System.out.println("\n"+"最小值为:"+result1);
}
//遍历
public static void array(int[] arr){
//输出左大括号
System.out.print("{");
for(int x = 0 ; x < arr.length ; x++){
//索引的长度 等于 数组长度-1
if(x == arr.length-1){
System.out.print(arr[x]+"}");
}else{
System.out.print(arr[x]+",");
}
}
}
/*两个明确
1)明确返回值类型: int类型
2)参数类型以及参数个数
int类型的数组 1个参数
*/
//思路:定义一个第三方变量,,求最大值
public static int array1(int[]arr){
int max = arr[0];
//遍历后面的元素:从索引1开始
for(int y = 1 ; y < arr.length ; y++){
//判断 如果后面的元素都大于max了,
if(arr[y] > max){
max = arr[y];
}
}
return max;
}
//最小值
public static int array2(int[]arr){
int max1 = arr[0];
//遍历后面的元素:从索引1开始
for(int k = 1 ; k < arr.length ; k++){
//判断 如果后面的元素都大于max了,
if(arr[k] < max1){
max1 = arr[k];
}
}
return max1;
}
}
学习体会
通过两周的学习,我总结如下:
长时间的不学习脑力真的有所退化,没有当年在学校的那中学习潜力,两周以来,学习内容逐渐增多,有些吃力,但是我告诉我自己不能放弃,学习没有是容易的,最重要的是坚持.
对于上周的内容学习,我在方法,数组这块还有不熟悉的地方,我也在加强学习,不断通过敲代码来熟悉,对于做题的思路模糊,对自己写的内容不是很肯定对错,我也在不断的练习,看老师的代码逻辑.我认为学习要有自己的理解,有自己的思路,一味的照猫画虎也是不行的.
上课认真听讲,做到课后预习,课后复习,也可以看别的视频,来充实自己,只有不断的学习才能成长,不能只满足一时,对自己未来有一个明确的规划,计划.
要培养自己的学习习惯,有一个良好的学习习惯可以更好地提升自己,多向别人请教学习,不会就问,有问题大家一起讨论学习.每天可以分享自己的学习收获,合理安排自己的学习时间,认真学习.