java基础第5天
来源:互联网 发布:手机python3.0编程软件 编辑:程序博客网 时间:2024/04/28 11:19
1:数组的操作:
(1)查找
A:无序数组
public static int getIndex(int[] arr,int value)
{
for(int i=0; i<arr.length; i++)
{
if(arr[i]==value)
{
return i;
}
}
//当循环结束,说明元素在数组中不存在
return -1;
}
B:有序数组 二分查找
前提条件:保证数组是有序排列
折半查找需要完成的事情:
指定一个数组,指定一个关键字,查找这个关键字是否在是这个数组中
找到了指定关键字,将返回关键字所在数组的下标
找不到,就返回小于0的数
public static int getIndex(int[] arr,int value)
{
int min = 0;
int max = arr.length - 1;
int mid = (min+max)/2;
while(arr[mid]!=value)
{
if(arr[mid]>value)
{
max = mid - 1;
}
else if(arr[mid]<value)
{
min = mid + 1;
}
//如果没有怎么办?min max
if(min>max)
{
return -1;
}
mid = (min+max)/2;
}
return mid;
}
2. 查表算法
给定一个十进制的数据,通过计算,得出十六进制
问题: 解决如何获取二进制最低四位 &15
四位计算,如何保存计算后的数据
3. 数组的反转
最远的数据换位置
4:二维数组
(1)int[][] arr = new int[3][2];
A:定义了名称为arr的二维数组
B:二维数组中有3个一维数组
C:每一个一维数组中有2个元素
D:一维数组的名称分别为arr[0], arr[1], arr[2]
arr:二维数组名
arr[1]:二维数组中的第二个数组名
arr[1][1]:二维数组中的第二个数组的第二个元素
E:给第一个一维数组1脚标位赋值为78写法是:arr[0][1] = 78;
(2)格式2:int[][] arr = new int[3][];
A: 二维数组中有3个一维数组
B: 每个一维数组都是默认初始化值null
C: 可以对这个三个一维数组分别进行初始化
arr[0] = new int[3];
arr[1] = new int[1];
arr[2] = new int[2];
(3)int[][] arr = {{3,8,2},{2,7},{9,0,1,6}};
A:二维数组有3个一维数组。
B:第一个一维数组有3个元素
第一个一维数组有2个元素
第一个一维数组有4个元素
(4)二维数组的遍历
public static void printArray2(int[][] arr2)
{
for(int i=0; i<arr2.length; i++)
{
for(int j=0; j<arr2[i].length; j++)
{
System.out.print(arr2[i][j]+" ");
}
System.out.println();
}
}
(5)二维数组的应用
求一年的销售总额。
- java基础第5天
- java基础第5天
- Java基础总结第(5)天
- java基础第1天
- java基础第2天
- java基础第3天
- java基础第4天
- java基础第6天
- java基础第7天
- java基础第8天
- java基础第9天
- java基础第10天
- java基础第11天
- java基础第12天
- java基础第13天
- java基础第14天
- java基础第15天
- java基础第16天
- VC中检测设备变化,OnDeviceChange
- 捕捉Edittext的 输入字符
- System.Threading.Timer线程通讯
- c/c++中的时间函数
- 第2章 什么是面向对象分析
- java基础第5天
- SQL2005:Excel 导入,使用sp_configure启用 'Ad Hoc Distributed Queries'
- Web应用配置文件热加载
- Android EditText插入字符串到光标所在位置
- java基础第6天
- java基础第7天
- 第三次作业
- linux(redhat系)系统启动级别设置
- EOJ 2574 Principles of Compiler [2009年研究生机试]