JavaSE-Day03
数组
数组就是相同类型的一组数据的集合,他是一种引用数据类型,本质上还是一个类。
数组的声明和创建
数组的声明
int[] array1 ;
int array2[];//第一种推荐使用,第二种是为了迎合C,不过使用也没有问题。
String[] array3;
char[] array4;
class [] array5;
数组的三种初始化
//第一种可以直接写死,写死之后数组不能改变
//静态初始化
String[] name = {"祁昂","大神","龙飞","小神"}
//动态初始化
String[] name2 = new String[4];
int count = 0;
//为name2赋值
for(String i:name){
name2.[count] = i;
count++;
}
//注意上边在初始化的时候用到了new关键字,new之后将在堆里面开辟出一块内存空间,后面的是说的是数组的长度为4,在之后的使用中数组的下标是0-3是不能改变的,这个”4“将在栈中开辟四个地址
//引用初始化
//Main类
public class Main {
public char sex;
public String name;
public Main(char sex,String name){
this.name = name;
this.sex = sex;
}
}
public class Arrays {
public static void main(String[] args){
Main[] main = {new Main('男',"龙飞"),new Main('女',"祁昂")};
System.out.println(main[0].name+":"+main[0].sex);
System.out.println(main[1].name+":"+main[1].sex);
}
}
下标越界
这个错误非常常见,注意即可,比较简单
二维数组
二维数组就是一维数组中元素为数组,通常的定义方式如下:
//静态初始化
String[][] name ={{"龙飞","男"},{"祁昂","女"}}
//动态初始化
String[][] name = String[2][2]
name[0][0] = "龙飞";
name[0][1] = "男";
name[1][0] = "祁昂";
name[1][1] = "女";
Arrays讲解
Arrays中有许多的已成方法,可以直接拿来使用
sort(),toString,pill()and so on...
冒泡排序
//比较简单,用处不大
稀疏数组
本质上还是一个普通的数组,只不过是小改成了一种特定的形式
面向对象
面向过程:按照事物的发展一步一步来的方式
面向对象:将按照事物的发展一步一步来的方式包装成一个类,通过调用这个类可以直接获取事物发展的全过程
类的创建和对象的初始化
public class student{
public Static void main(String[] args){
Person person = new Person("龙飞","男","女");
Person person = new Person("祁昂","女","男");
}
}
class person(){
String name;
String sex;
String likeBoyOrGirl;
public person(String name,String sex, String likeBoyOrGirl){
this.name = name;
this.sex = sex;
this.likeBoyOrGirl = likeBoyOrGirl;
}
}