数组概述

一,数组基本操作

①一维数组的创建:数组元素类型[] 数组名字=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]+" ");
}
}

Java初学心得(二)的更多相关文章

  1. Java初学心得(一)

    Java中基本组成单元是类,在类中又包含属性和方法. 每个应用程序都包含一个main()方法,main方法里的称为主类. 一,基本变化 ①全局变量:在类中的属性 局部变量:在方法中的属性 ②基本数据类 ...

  2. Java学习心得之 HttpClient的GET和POST请求

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...

  3. Java学习心得之 Linux下搭建Java环境

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建Java环境 1.前言2.JDK安装3.配置环境变量4. ...

  4. Java学习心得之 Linux下搭建JavaWeb环境

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建JavaWeb环境 1. 前言2. Java安装3. t ...

  5. 实战Java虚拟机之二“虚拟机的工作模式”

    今天开始实战Java虚拟机之二:“虚拟机的工作模式”. 总计有5个系列 实战Java虚拟机之一“堆溢出处理” 实战Java虚拟机之二“虚拟机的工作模式” 实战Java虚拟机之三“G1的新生代GC” 实 ...

  6. Java设计模式(二) 工厂方法模式

    本文介绍了工厂方法模式的概念,优缺点,实现方式,UML类图,并介绍了工厂方法(未)遵循的OOP原则 原创文章.同步自作者个人博客 http://www.jasongj.com/design_patte ...

  7. Java 验证码、二维码

    Java 验证码.二维码 资源 需要:   jelly-core-1.7.0.GA.jar网站:   http://lychie.github.io/products.html将下载下来的 jelly ...

  8. Java入门(二)——果然断更的都是要受惩罚的。。。

    断更了一个多月,阅读量立马从100+跌落至10-,虽说不是很看重这个,毕竟只是当这个是自己的学习笔记,但有人看,有人评论,有人认同和批评的感觉还是很巴适的,尤其以前有过却又被剥夺的,惨兮兮的. 好好写 ...

  9. java初学的分析

    java初学的分析第一阶段:入门阶段学习目标:简单项目开发学习内容:1.Java入门书籍,Java基础知识.关于Java入门级的书,给大家推荐过<Java编程思想>.<Java核心技 ...

随机推荐

  1. 前端微信小程序云开发基础讲解

    什么是云开发 云开发与传统模式的对比 云开发能力介绍云开发对小程序开发的变革 云开发是微信团队联合腾讯云提供的原生serverless云服务,致力于帮助更多的开发者快速实现小程序业务的开发,快速迭代. ...

  2. Detection of Glacier Calving Margins with Convolutional Neural Networks: A Case Study

    利用Unet结构对landsat数据进行冰川裂缝提取,结构如下:训练集很小只有123张152*240图片

  3. mysql find_in_set 函数 使用方法

    mysql> select * from user; +------+----------+-----------+ | id | name | address | +------+------ ...

  4. 数据结构---公交线路提示系统05(内附读取表格+迪杰斯特拉算法Java代码)

    今天做的最多的事情就是纠错了,通过添加输出语句判断错误来源: 找到错误来源: wb = new XSSFWorkbook(input);//语句创建错误 网上查询发现是jar包的问题: 下图为poi的 ...

  5. springboot注解方式使用redis缓存

    引入依赖库 在pom中引入依赖库,如下 <dependency> <groupId>org.springframework.boot</groupId> <a ...

  6. Edusoho之Basic Authentication

    通过如下代码,可以正常请求并获取对应的数据: curl -X POST -H "Accept:application/vnd.edusoho.v2+json" -H "A ...

  7. 分布式并行计算MapReduce

    作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3319 1.用自己的话阐明Hadoop平台上HDFS和MapReduce ...

  8. 菜鸟学IT之分布式文件系统

    作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/3310 1.目录操作 在HDFS中为hadoop用户创建一个用户目录(had ...

  9. Delphi内存专题

    第一课: Windows 是多任务的操作系统, 一个任务就是一个应用(应用程序).一个应用占一个进程; 在一个进程里面, 又可以运行多个线程(所以就有了很多"多线程编程"的话题). ...

  10. 啃OBS源码-界面汉字

    插件对应该字体目录:D:\project\vs\obs\obsstudio21.12\build\rundir\Debug\data\obs-plugins obs对应该字体目录:D:\project ...