数组概述

一,数组基本操作

①一维数组的创建:数组元素类型[] 数组名字=new 数组类型[数组元素个数]  例:int []arr=new int[5];数组长度为5

②初始化一维数组:第一种:int []arr=new int[]{1,2,3,5,25}  第二种:int []arr={34,2,1,3};

③二维数组的创建:数组元素类型 [][]数组名字=new 数组元素类型[第一维长度][第二维长度]

④二维数组初始化:类型 arr[][]={v1,v2,v3....};创建成功后每个元素初值为0

⑤填充替换数组:fill(int []a,int value),将value的值赋值给数组每个元素;fill(int []a,int begin,int end,int v)区段赋值,从begin到end赋值给v

⑥数组排序:Arrays.sort(数组名称)

⑦复制数组:copyOf(数组名,int 长度)返回新数组,复制指定区间数组:copyOfRange(数组名,begin,end)从begin下标开始到end-1下标复制到新数组,返回新数组。

⑧数组查询:在查询之前需对数组进行sort排序,之后用Arrays.binarySearch(数组名,搜索值)返回数组下标,在指定范围内搜索:Arrays.binarySearch(数组名,begin,end,搜索值)   从begin开始到end-1进行搜索,返回下标位置

二,数组排序算法

①冒泡排序:双层循环+比较+交换

②直接选择排序:

package com.输入;
import java.util.*;
public class imput {
public static void main(String[] args) {
int arr[]=new int[] {1,8,9,4,5};
for(int i=1;i<arr.length;i++)
{
int index=0;
for(int j=1;j<=arr.length-i;j++)
{
if(arr[j]>arr[index])
index=j;
}
int temp=arr[arr.length-i];
arr[arr.length-i]=arr[index];
arr[index]=temp;
}
for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+" "); }
}

反转排序:

package com.输入;
import java.util.*;
public class imput {
public static void main(String[] args) {
int arr[]=new int[] {1,8,9,4,5};
System.out.println("原数组为:");
for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+" ");
System.out.println();
System.out.println("反转后数组为:");
for(int i=0;i<arr.length/2;i++)
{
int temp=arr[i];
arr[i]=arr[arr.length-1-i];
arr[arr.length-1-i]=temp;
}
for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+" ");
}
}

最新文章

  1. sqlserver 中row_number,rank,dense_rank,ntile排名函数的用法
  2. 获取Ip地址
  3. 用 phylomatic 软件生成的进化树
  4. HDU2222 Keywords Search [AC自动机模板]
  5. 【转载】.NET(C#): Task.Unwrap扩展方法和async Lambda
  6. 欧拉工程第55题:Lychrel numbers
  7. 《搭建DNS内外网的解析服务》RHEL6
  8. to config RBS/RBLOB in sharepoint
  9. 使用DML语句【weber出品必属精品】
  10. Phpcms v9系统类库与函数库调用方法
  11. Nginx Configure时配置
  12. surfaceView画图
  13. SharpDevelop插件开发手册
  14. 基于FPGA的VGA显示静态图片
  15. HTML: width,height
  16. 微信小程序Md5加密(utf-8汉字无影响)
  17. 俺的新书《Sencha Touch实战》终于出版了
  18. 更改mac系统语言及其软件
  19. [转载]使用SQL Server 2008的事务日志传送功能备份数据库(logshiping)
  20. 微信小程序——video使用总结

热门文章

  1. Processing设计Android APP(1) - 安装
  2. linux命令之------Wc命令(word count)
  3. 我的Android前生今世之缘-学习经验-安卓入门教程(六)
  4. c博客作业01--顺序分支结构
  5. 「PKUSC2018」PKUSC
  6. Java串口通信--------基于RXTX (附带资源地址)
  7. hdu1702 ACboy needs your help again![简单STL 栈 队列]
  8. maven工程中MENIFEST.MF中属性作用
  9. 范仁义html+css课程---8、新元素布局
  10. Java多个线程顺序打印数字