黑马程序员--第三天
2015-07-14 09:35
323 查看
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
一、数组
1.冒泡排序法
相邻元素间进行比较,最值出现在最后位。
核心代码:
public static void maoPao(int[] arr)
{
for (int x=0;x<arr.length-1 ; x++ )
{
for (int y=0;y<arr.length-x-1 ;y++ )//-x是为了改变循环次数,-1是为了避免第一次时越界
{
if(arr[y]>arr[y+1])
{
int temp = arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
}
2.查找操作
普通查找:
public static int getIndex(int[] arr,int key)
{
for (int x=0;x<arr.length ;x++ )
{
if(arr[x]==key)
return x;
}
return -1;
}
折半查找:数组必须是有序的;
//折半查找两种方式
/*public static int zheBan(int[] arr,int key)
{
int min,max,mid;
min=0;
max=arr.length;
mid=(min+max)/2;
while(key!=arr[mid])
{
if(key>arr[mid])
min=mid+1;
else
max=mid-1;
if(min>max)
return -1;
mid=(min+max)/2;
}
return mid;
}*/
public static int zheBan2(int[] arr,int key)
{
int min,max,mid;
min=0;
max=arr.length;
mid=(min+max)/2;
while(min<=max)
{
if(key>arr[mid])
min=mid+1;
else if(key<arr[mid])
max=mid-1;
else
return mid;
mid=(min+max)/2;
}
return -1;
}
二、面向对象
特征:封装、继承、多态。
找对象,建立对象,使用,对象。并维护对象之间的关系。
类和对象的关系:类是现实生活中对事物的描述;对象是这类事物实实在在存在的个体。
描述事物其实就是在描述事物的属性和行为。
封装:私有仅仅是封装的一种表现形式;之所以对外提供访问方式,是因为可以在访问方式中加入逻辑判断等语句。
1.this关键字
this代表本类的对象;this代表它所在函数所属对象的应用。
this应用:当定义类中功能时,该函数内部要用到调用该函数的对象时,这是就用this来表示这个对象。
构造函数间调用要用this不可以用函数名。
2.static关键字
当成员(成员变量,成员函数)被static修饰后,除了可以被对象调用 外还可以直接被类名调用。
优先于对象存在。
静态方法只能访问静态成员,静态方法中不可以出现this、super关键字。
一、数组
1.冒泡排序法
相邻元素间进行比较,最值出现在最后位。
核心代码:
public static void maoPao(int[] arr)
{
for (int x=0;x<arr.length-1 ; x++ )
{
for (int y=0;y<arr.length-x-1 ;y++ )//-x是为了改变循环次数,-1是为了避免第一次时越界
{
if(arr[y]>arr[y+1])
{
int temp = arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
}
2.查找操作
普通查找:
public static int getIndex(int[] arr,int key)
{
for (int x=0;x<arr.length ;x++ )
{
if(arr[x]==key)
return x;
}
return -1;
}
折半查找:数组必须是有序的;
//折半查找两种方式
/*public static int zheBan(int[] arr,int key)
{
int min,max,mid;
min=0;
max=arr.length;
mid=(min+max)/2;
while(key!=arr[mid])
{
if(key>arr[mid])
min=mid+1;
else
max=mid-1;
if(min>max)
return -1;
mid=(min+max)/2;
}
return mid;
}*/
public static int zheBan2(int[] arr,int key)
{
int min,max,mid;
min=0;
max=arr.length;
mid=(min+max)/2;
while(min<=max)
{
if(key>arr[mid])
min=mid+1;
else if(key<arr[mid])
max=mid-1;
else
return mid;
mid=(min+max)/2;
}
return -1;
}
二、面向对象
特征:封装、继承、多态。
找对象,建立对象,使用,对象。并维护对象之间的关系。
类和对象的关系:类是现实生活中对事物的描述;对象是这类事物实实在在存在的个体。
描述事物其实就是在描述事物的属性和行为。
封装:私有仅仅是封装的一种表现形式;之所以对外提供访问方式,是因为可以在访问方式中加入逻辑判断等语句。
1.this关键字
this代表本类的对象;this代表它所在函数所属对象的应用。
this应用:当定义类中功能时,该函数内部要用到调用该函数的对象时,这是就用this来表示这个对象。
构造函数间调用要用this不可以用函数名。
2.static关键字
当成员(成员变量,成员函数)被static修饰后,除了可以被对象调用 外还可以直接被类名调用。
优先于对象存在。
静态方法只能访问静态成员,静态方法中不可以出现this、super关键字。
相关文章推荐
- 【算法】 最近面试遇到的一道报数出队列的题
- 《高效程序员的45个习惯》notes
- 对程序员非常重要的24个软技能
- Java面试题
- 黑马程序员——Java 集合(下)(第九篇)
- PHP面试的相关知识点
- 【剑指Offer学习】【面试题65:滑动窗口的最大值】
- 算法是程序员永远都需要学习的
- 程序员7大软技能测验 你得几分?
- 【剑指Offer学习】【面试题64:数据流中的中位数】
- 【剑指Offer学习】【面试题63:二叉搜索树的第k个结点】
- [注]十大编程禁忌 -- 程序员都必须克服
- 黑马程序员1--献给迷茫的自己
- 黑马程序员-第十篇图形化用户界面
- 黑马程序员_Java
- 黑马程序员_设计模式
- 教你如何迅速秒杀掉:99%的海量数据处理面试题
- 十道海量数据处理面试题与十个方法大总结
- 读《方法论、方法论——程序员的阿喀琉斯之踵》有感
- 面试问题之:Dalvik VM和JVM的区别(2)---架构层