今日内容:数组,面向对象思维
案例一:定义一个数组,前后置换;
//定义一个数组,前后置换
//定义一个数组,前后置换
class Demo1 {
public static void main(String[] args) {
int[] arr={23,55,7,11,9,1};
getReverse(arr);
}
//定义一个方法,当然也可直接写在主程序里执行
public static void getReverse(int[] a){ //格式:修饰符+返回值类型+方法名+(形参)
//置换
int temp=0; //定义一个接收值的中间变量
//为什么要/2?因为如果不除以二,第4个又和第一个置换,最后结果还是原来的数组
for(int i=0;i<a.length/2;i++){
temp=a[i];
a[i]=a[a.length-1-i];
a[a.length-1-i]=temp;
}
//输出
//思路:前面的括号可以在循环前面写,后面的括号可以用if语句判断,当i为最后一个值得时候,
//把,换成},既满足了最后一个不带,又满足了加}的要求
System.out.print("{");
for(int i=0;i<a.length;i++){
if(i!=a.length-1){
System.out.print(a[i]+",");
}else
System.out.print(a[i]+"}");
}
}
}
案例二:把数组按照如下个数输出:{{1,2},{3,4,5}}
//定义按照如下格式输出:{{1,2},{3,4,5}}
class Demo2 {
public static void main(String[] args) {
int[][] arr={{1,2},{3,4,5}};
layOut(arr); //方法的引用:方法名(实参);
}
//定义一个方法
public static void layOut(int[][] a){
System.out.print("{");
for(int i=0;i<a.length;i++){
System.out.print("{");
//先打印里面的数组{1,2}{3,4,5}然后利用在外层循环利用if语句,如果i不等于最后一个下标,
//则输出数组+,否则就输出数组+}
for(int j=0;j<a[i].length;j++){
if(j!=a[i].length-1){
System.out.print(a[i][j]+",");
}else
System.out.print(a[i][j]+"}");
}
if(i!=a.length-1){
System.out.print(",");
}else
System.out.print("}");
}
}
}
案例三:实现一个数组前后位置的调换
//实现数组前后位置调换
class Demo3{
public static void main(String[] args) {
int[] a={1,3,65,5,66,4,9};
getReverse(a);
}
//定义一个方法
public static void getReverse(int[] a){
int temp=0;
//为什么此处要/2,因为如果不除以二,当i走过数组中间之后,换过位置的数据又被调换回来了
for(int i=0;i<=(a.length-1)/2;i++){
temp=a[i];
a[i]=a[a.length-1-i];
a[a.length-1-i]=temp;
}
System.out.print("{");
for(int i=0;i<a.length;i++){
if(i!=a.length-1){
System.out.print(a[i]+",");
}else
System.out.print(a[i]+"}");
}
}
}
案例四:面向对象思想
class 学生 {
//属性
int height;
int weight;
int age;
//方法
public void 学习() {
System.out.println("xuexi ");
}
public void 下课(){
System.out.println("下课");
}
}
public class 大学生{
public static void main(String[] args){
学生 大学生=new 学生();
System.out.print(大学生.height);
System.out.print(大学生.weight);
大学生.学习();
大学生.下课();
}
}