• 数组的定义:int[] array=new array[n];int array[]={, , , ,};定义了数组,JVM就会给其一个空间,数组是应用类型的数据类型,其存储方式是随机存储。
  • 数组的遍历,一般是通过循环来遍历其元素的,二维数组可以是通过霜或双重循环来遍历。数组的下标是从0开始的。
  • 数组的替换,数组提供了一个方法,两种重载的形式,此方法为fill(),可以通过此方法来填充数组或者替换数组指定位置的元素。
public class Array_Fill {
public static void main(String[] args) {
int[] array = new int[5];// 定义一个含有五个元素的一维数组
Arrays.fill(array, 8);// 使用Arrays类的静态方法fill来填充数组元素
// 输出数组中的元素
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
System.out.println();
// 替换元素
Arrays.fill(array, 2, 5, 5);
// 输出数组
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
} }
}
  • 数组的排序:数组本身有Arrays类中的sort()方法,这里写几种常见的排序方法。(1)冒泡排序法

    public static void main(String[] args) {
    Scanner in=new Scanner(System.in);
    int i,j;//i用来存储数组的最小元素的数值,j用来该元素的位置
    int[] array=new int[10];//定义一个长度为10的整型数组
    int iTemp=0;//变量表示数组元素最小值
    int iPos=0;//表示最小元素的下标
    System.out.println("请输入十个数:");
    for(int n=0;n<array.length;n++){//遍历输入数组的十个元素
    array[n]=in.nextInt();
    }
    /*
    * 对数组进行排序
    */
    for(i=0;i<9;i++){//外层循环
    iTemp=array[i];//设置当前的元素为最小值
    iPos=i;//记录最小元素的位置
    for(j=i+1;j<10;j++){//内层循环表示要与最小元素进行比较的预测尿素以及次数
    if(array[j]<iTemp){//如果后来的元素中有比临时最小值小的数,那么重新赋值最小值
    iTemp=array[j];
    iPos=j;
    }
    //交换最小值的位置
    array[iPos]=array[i];
    array[i]=iTemp;
    }
    }
    //输出数组
    System.out.println("选择排序后的从小到大的顺序是:");
    for(int n=0;n<array.length;n++){
    System.out.print(array[n]+"\t");
    }

      (2)冒泡排序法

    public class MaoPaoPaiXu {
    
    	public static void main(String[] args) {
    Scanner in=new Scanner(System.in);
    int i=0,j=0;//用来控制内外层循环
    int[] array=new int[10];
    int iTemp=0;//用来存储中间变量
    //输入数组的十个元素
    System.out.println("请输入10个数:");
    for(int n=0;n<array.length;n++){
    array[n]=in.nextInt();
    }
    //冒泡排序法
    for(i=0;i<array.length-1;i++){
    for(j=i;j<array.length-1;j++){
    if(array[j]>array[j+1]){
    iTemp=array[j];
    array[j]=array[j+1];
    array[j+1]=iTemp;
    }
    }
    }
    System.out.println("冒泡排序后:");
    for(int n=0;n<array.length;n++){
    System.out.print(array[n]+"\t");
    }
    }

      (3)交换排序算法

    package ArraysSort;
    import java.util.Scanner;
    /**
    * 交换排序算法:交换排序算法是将每一位数与其它所有数进行比较,如果发现符合条件的数据则交换位置
    * @author Administrator
    *
    */ public class JiaoHuanPaiXu { public static void main(String[] args) {
    Scanner in=new Scanner(System.in);
    int i=0,j=0;
    int[] array=new int[10];
    int iTemp=0;
    System.out.println("输入数组的十个数:");
    for(int n=0;n<array.length;n++){
    array[n]=in.nextInt();
    }
    //交换排序
    for(i=0;i<array.length-1;i++){
    for(j=i+1;j<array.length;j++){
    if(array[i]<array[j]){
    iTemp=array[i];
    array[i]=array[j];
    array[j]=iTemp;
    }
    }
    }
    System.out.println("交换排序后的顺数是:");
    for(int n=0;n<array.length;n++){
    System.out.print(array[n]+"\t");
    } } }

      (4)插入排序法(c基础排序算法里面有)

java数组基础知识的更多相关文章

  1. 什么才是java的基础知识?

    近日里,很多人邀请我回答各种j2ee开发的初级问题,我无一都强调java初学者要先扎实自己的基础知识,那什么才是java的基础知识?又怎么样才算掌握了java的基础知识呢?这个问题还真值得仔细思考. ...

  2. JAVA相关基础知识

    JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...

  3. Java 多线程——基础知识

    java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...

  4. Java 数组基础,java.util.Arrays

    定义数组 方式1(推荐,更能表明数组类型) 方式2(同C语言) 方式3定义时直接初始化 数组运用基础 数组长度 equals() 数组元素不为基本数据类型时 二维数组 二维数组基础 变长的二维数组 j ...

  5. java必备基础知识(一)

    学习的一点建议: 每一门语言的学习都要从基础知识开始,学习是一个过程,"万丈高楼平地起",没有一个好的地基,想必再豪华的高楼大厦终究有一天会倒塌.因此,我们学习知识也要打牢根基,厚 ...

  6. java部分基础知识整理----百度脑图版

    近期发现,通过百度脑图可以很好的归纳总结和整理知识点,本着学习和复习的目的,梳理了一下java部分的知识点,不定期更新,若有不恰之处,请指正,谢谢! 脑图链接如下:java部分基础知识整理----百度 ...

  7. PHP 数组基础知识

    php 数组基础知识function abc($a,$b,$c = 0){ echo $a,$b,$c;}abc(1,3); //调用方法 ////可变参数function def(){ $arr = ...

  8. java中的二维数组基础知识

    二维数组基本知识,毕竟常见的有:概念,初始化,遍历 概念: 理解二维数组,首先要先理解一维数组是什么.一维数组是个容器,存储相同数据类型的容器(这里不再做一位数组的具体介绍).二维数组就是用来存储一维 ...

  9. JAVA学习基础知识总结(原创)

    (未经博主允许,禁止转载!) 一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平 ...

随机推荐

  1. 小程序map地图点击makert放大效果和点击放大地图

    WXML文件和JS文件代码在下方 <view class='map'> <map id="map" longitude="{{location.lng} ...

  2. Scrum 冲刺第五天

    一.每日站立式会议 1.会议内容 1)进行每日工作汇报 张博愉: 昨天已完成的工作:学习如何编写测试计划 今日工作计划:学习如何编写用户手册 工作中遇到的困难:写文档也有很多讲究的点,花了很多时间 张 ...

  3. 题解-Cats Transport

    题解-Cats Transport Cats Transport 有 \(n\) 个山丘,\(m\) 只猫子,\(p\) 只铲屎官.第 \(i-1\) 个山丘到第 \(i\) 个山丘的距离是 \(d_ ...

  4. 使用纯js 不导包实现 table 导出 Excel

    1.将js粘贴到项目 2.设置table标签 id3.定义按钮,调用方法即可 1 <!DOCTYPE html> 2 <html lang="zh_CN"> ...

  5. ⑥SpringCloud 实战:引入gateway组件,开启网关路由功能

    这是SpringCloud实战系列中第4篇文章,了解前面第两篇文章更有助于更好理解本文内容: ①SpringCloud 实战:引入Eureka组件,完善服务治理 ②SpringCloud 实战:引入F ...

  6. Git常用命令大全,迅速提升你的Git水平

    原博文 https://mp.weixin.qq.com/s/hYjGyIdLK3UCEVF0lRYRCg 示例 初始化本地git仓库(创建新仓库) git init                 ...

  7. [.NET] - Enhanced Strong Naming (加强版的强签名程序集) – 如何迁移原有的强命名程序集

    依据文档: https://msdn.microsoft.com/en-us/library/hh415055(v=vs.110).aspx 虽然文档上给出了看似完整的步骤,但是如果按照上面的步骤,结 ...

  8. Python操作PDF-文本和图片提取(使用PyPDF2和PyMuPDF)

    PDF文件格式 如今,可移植文档格式(PDF)属于最常用的数据格式.在1990年,PDF文档的结构由Adobe定义.PDF格式的思想是,对于通信过程中涉及的双方(创建者,作者或发送者以及接收者)而言, ...

  9. 【Unity游戏开发】SpriteAtlas与AssetBundle最佳食用方案

    一.简介 在Unity步入2019.4以后,新版的SpriteAtlas日趋完善,已经完全可以在商业项目中使用了.但是纵观网络平台上,许多关于SpriteAtlas的文章还停留在2018的初版时期,其 ...

  10. 【electron+vue3+ts实战便笺exe】二、electron+vue3开发内容

    不要让自己的上限成为你的底线 本来以为有万字的..没想到才堪堪近6000字.为了水文的嫌疑,只挑了重点的地方讲,比如component内的组件就挑了右键弹窗去说明,建议在看本文的时候边查看项目,有不懂 ...