在数组阶段,主要学习了数组的增删改查和随机数的生成,下面我详细对这几个方面总结一遍:
增:
其实就是对数组值的添加,添加的方式可以分为在数组中某一个位置插入,也可以在数组的末尾添加,具体实现方法:
// 定义一个数组,长度可设为定长或变长
//定长数组在插入值断点时候可以在数组下标对应位置直接插入,而变长数组的插入值需要对数组做判断。
for(int i = 0 ; i < array.length ; i ++ ){ // 遍历数组
if( // 判断插入值的位置是否合法)
// 赋值语句
}else {
// 错误处理语句
}
删:
数组删除的实质就是对删除位置之后的数组值的移动,数组长度减一,具体语法表示
for(int i = 0 ; i < array.length ; i ++ ){ // 遍历数组
if(// 判断数组删除值是否存在)
for(int j= i ; j< arriay.length - 1 ; j ++){ // 使数组后面的值都往前移动一次
array[i] = array[i+1];
}
num = Arrays.copyOf(num, num.length - 1); // 将原数组的长度减一
// 成功提示
}if (i == array.length - 1){
// 失败处理方式
}
改:
就是对已经存在数组中的值进行替换,主要就是在数组中找到需要替换的值,然后使用新值替换,具体执行流程:
for(int i = 0 ; i < array.length ; i ++ ){ // 遍历数组
if(// 判断数组需要修改的值是否存在){
array[i] = value; // 将修改的值替换原值
// 成功提示
} if (i == array.length - 1){
//错误处理
}
查:
就是对数组的一个遍历,但是要注意对空值的判断。
for(int i = 0 ; i < array.length ; i ++ ){ // 遍历数组
if(array[i] != //数组类型的默认值){
system.out.print(array[i] + " \t");
}
}
面向对象:
核心思想就是万事万物都可抽象和实例话到程序中,,即类与对象
1.方法重载
2.构造方法
3.this关键字: this代表“当前实例”,即是模板中的当前对象,模板服务于那个对象,this就指向那个对象。(this.隐式存在)
三大特性:
1.封装-private修饰,使用get/set方法与外界互通。
2.继承-类与类之间的特征和行为之间的一种赠与与获得( is a)
访问修饰符:private , default,protected,public
方法的重写,是在子类中定义与父类一样的方法,优先执行子类重写的方法
super关键字
3.多态-父类指向子类对象,从而长生多种形态,也是一个难点
使用场景一:父类作为方法形参,实现多态
如dog继承 animal;
public void 方法名(Animal animal){
// 调用方法
}
animal ani = new Dog();
ani.方法名(ani); // 调用该方法的对象
使用场景二:父类作为方法返回值,实现多态;
public Animal run(String name){
ifi(name.equals(" // 值")) {
return new Dog(); //仅能接收父类子类或本身
}
return null;
}
装箱(向上转型)和拆箱(向下转型)
关键字instanceof
if( 对象名 instanceof 实例化对象名){
// 拆箱操作
}