Java初学心得(二)
2024-08-27 13:39:19
数组概述
一,数组基本操作
①一维数组的创建:数组元素类型[] 数组名字=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]+" ");
}
}
最新文章
- sqlserver 中row_number,rank,dense_rank,ntile排名函数的用法
- 获取Ip地址
- 用 phylomatic 软件生成的进化树
- HDU2222 Keywords Search [AC自动机模板]
- 【转载】.NET(C#): Task.Unwrap扩展方法和async Lambda
- 欧拉工程第55题:Lychrel numbers
- 《搭建DNS内外网的解析服务》RHEL6
- to config RBS/RBLOB in sharepoint
- 使用DML语句【weber出品必属精品】
- Phpcms v9系统类库与函数库调用方法
- Nginx Configure时配置
- surfaceView画图
- SharpDevelop插件开发手册
- 基于FPGA的VGA显示静态图片
- HTML: width,height
- 微信小程序Md5加密(utf-8汉字无影响)
- 俺的新书《Sencha Touch实战》终于出版了
- 更改mac系统语言及其软件
- [转载]使用SQL Server 2008的事务日志传送功能备份数据库(logshiping)
- 微信小程序——video使用总结
热门文章
- Processing设计Android APP(1) - 安装
- linux命令之------Wc命令(word count)
- 我的Android前生今世之缘-学习经验-安卓入门教程(六)
- c博客作业01--顺序分支结构
- 「PKUSC2018」PKUSC
- Java串口通信--------基于RXTX (附带资源地址)
- hdu1702 ACboy needs your help again![简单STL 栈 队列]
- maven工程中MENIFEST.MF中属性作用
- 范仁义html+css课程---8、新元素布局
- Java多个线程顺序打印数字