class:定义类的关键字。
通过new关键字在堆内存中创建一个类的实例对象。
需求:描述汽车(颜色、轮胎数),描述事物其实就是在描述事物的属性和行为。
- 属性对应类中的变量;行为对应类中的方法(函数)
- 其实定义类就是定义属性和行为,属性和行为共同称为类的成员(成员变量、成员方法)
类的特点在于封装
成员变量和局部变量的区别:
- 作用范围:
成员变量作用于整个类中;局部变量作用于函数中或者语句(for)中。 -
在内存中的位置:
成员变量:在堆内存中、因为对象的存在而存在,对象的消失而消失。
局部变量:在栈内存中,函数执行完,变量消失。
排序算法
插入算法、堆排序、归并排序、希尔排序、快速排序、冒泡排序、选择排序
代码示例
class Demo{
public static void main(String... args){
int[] arr = {5,4,3,2,1,-100,99,-70,34,7,8};
}
public static void swap(int[] arr,int index1,int index2){
int temp = arr[index1];
arr[index1] = arr[index2];
arr[index2] = temp;
}
//冒泡排序:相邻的相比较
public static void bubbleSort(int[] arr){
for(int i = 0;i<arr.length-1;i++){
for(int j = 0;j<arr,length-1-i;j++){
if(arr[j]>arr[j+1]){
swap(arr,j,j+1);
}
}
}
}
//选择排序
public staitc void selectSort(int[] arr){
for(int i = 0;i<arr.length-1;i++){
for(int j = i; i<arr.length-1;j++){
if(arr[j]>arr[j+1]){
swap(arr,j,j+1);
}
}
}
}
冒泡图解
![](https://img.haomeiwen.com/i5472165/a443dffa95ccef2e.png)
选择排序
![](https://img.haomeiwen.com/i5472165/2172a72ceb358281.png)
网友评论