Java 数组 - 菜鸟教程

文章推薦指數: 80 %
投票人數:10人

Java 数组数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理 ... i < array.length; i++) { System.out.print(array[i] + " "); } }. 菜鸟教程--学的不仅是技术,更是梦想! 首页 HTML CSS JavaScript Vue Bootstrap NodeJS Python3 Python2 Java C C++ C# Go SQL Linux jQuery 本地书签 首页 HTML CSS JS 本地书签 Search Python3教程 Python2教程 Vue3教程 vue2教程 Bootstrap3教程 Bootstrap4教程 Bootstrap5教程 Bootstrap2教程 Java教程 Java教程 Java简介 Java开发环境配置 Java基础语法 Java对象和类 Java基本数据类型 Java变量类型 Java修饰符 Java运算符 Java循环结构 Java条件语句 Javaswitchcase JavaNumber&Math类 JavaCharacter类 JavaString类 JavaStringBuffer Java数组 Java日期时间 Java正则表达式 Java方法 JavaStream、File、IO JavaScanner类 Java异常处理 Java面向对象 Java继承 JavaOverride/Overload Java多态 Java抽象类 Java封装 Java接口 Java枚举 Java包(package) Java高级教程 Java数据结构 Java集合框架 JavaArrayList JavaLinkedList JavaHashSet JavaHashMap JavaIterator JavaObject Java泛型 Java序列化 Java网络编程 Java发送邮件 Java多线程编程 JavaApplet基础 Java文档注释 Java实例 Java8新特性 JavaMySQL连接 Java9新特性 Java测验 JavaStringBuffer和StringBuilder类 Java日期时间 Java数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。

Java语言中提供的数组是用来存储固定大小的同类型元素。

你可以声明一个数组变量,如numbers[100]来代替直接声明100个独立变量number0,number1,....,number99。

本教程将为大家介绍Java数组的声明、创建和初始化,并给出其对应的代码。

声明数组变量 首先必须声明数组变量,才能在程序中使用数组。

下面是声明数组变量的语法: dataType[]arrayRefVar;//首选的方法 或 dataTypearrayRefVar[];//效果相同,但不是首选方法 注意:建议使用dataType[]arrayRefVar的声明风格声明数组变量。

dataTypearrayRefVar[]风格是来自C/C++语言,在Java中采用是为了让C/C++程序员能够快速理解java语言。

实例 下面是这两种语法的代码示例: double[]myList;//首选的方法 或 doublemyList[];//效果相同,但不是首选方法 创建数组 Java语言使用new操作符来创建数组,语法如下: arrayRefVar=newdataType[arraySize]; 上面的语法语句做了两件事: 一、使用dataType[arraySize]创建了一个数组。

二、把新创建的数组的引用赋值给变量arrayRefVar。

数组变量的声明,和创建数组可以用一条语句完成,如下所示: dataType[]arrayRefVar=newdataType[arraySize]; 另外,你还可以使用如下的方式创建数组。

dataType[]arrayRefVar={value0,value1,...,valuek}; 数组的元素是通过索引访问的。

数组索引从0开始,所以索引值从0到arrayRefVar.length-1。

实例 下面的语句首先声明了一个数组变量myList,接着创建了一个包含10个double类型元素的数组,并且把它的引用赋值给myList变量。

TestArray.java文件代码: publicclassTestArray{ publicstaticvoidmain(String[]args){ //数组大小 intsize=10; //定义数组 double[]myList=newdouble[size]; myList[0]=5.6; myList[1]=4.5; myList[2]=3.3; myList[3]=13.2; myList[4]=4.0; myList[5]=34.33; myList[6]=34.0; myList[7]=45.45; myList[8]=99.993; myList[9]=11123; //计算所有元素的总和 doubletotal=0; for(inti=0;imax)max=myList[i]; } System.out.println("Maxis"+max); } } 以上实例编译运行结果如下: 1.9 2.9 3.4 3.5 Totalis11.7 Maxis3.5 For-Each循环 JDK1.5引进了一种新的循环类型,被称为For-Each循环或者加强型循环,它能在不使用下标的情况下遍历数组。

语法格式如下: for(typeelement:array) { System.out.println(element); } 实例 该实例用来显示数组myList中的所有元素: TestArray.java文件代码: publicclassTestArray{ publicstaticvoidmain(String[]args){ double[]myList={1.9,2.9,3.4,3.5}; //打印所有数组元素 for(doubleelement:myList){ System.out.println(element); } } } 以上实例编译运行结果如下: 1.9 2.9 3.4 3.5 数组作为函数的参数 数组可以作为参数传递给方法。

例如,下面的例子就是一个打印int数组中元素的方法: publicstaticvoidprintArray(int[]array){ for(inti=0;iarr[j+1]){ inttemp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } System.out.print("第"+(i+1)+"次排序结果:"); //列举每次排序的数据 for(inta=0;aarr[i]) { intnumber=arr[i]; arr[i]=arr[k]; arr[k]=number; } } } returnarr; } }WaterHole   WaterHole  710***[email protected]年前(2018-01-03) #0   冰糕  257***[email protected]  参考地址38java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。

具有以下功能: 给数组赋值:通过fill方法。

对数组排序:通过sort方法,按升序。

比较数组:通过equals方法比较数组中元素值是否相等。

查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。

importjava.util.Arrays; publicclassTestArrays{     publicstaticvoidoutput(int[]array){         if(array!=null){             for(inti=0;inum[i]){             totle=num[j];             num[j]=num[i];             num[i]=totle;         }     } } for(inti=num.length-1;0<=i;i--){     for(intj=i;0<=j;j--){         if(num[j]>num[i]){             totle=num[j];             num[j]=num[i];             num[i]=totle;         }     } } for(intk:num){     System.out.print(k+"==="); } 两次循环代码都可以出结果,区别在于一个是累加,一个是累减,随便去掉一个循环代码还是能得到结果路过顺便打酱油   路过顺便打酱油  782***[email protected]年前(2019-07-18) #0   好劲的维  pal***@qq.com19Java.util.Arrays类的排序拓展 java.util.Arrays.sort只可以用于按升序排列数组,若按降序排序可以使用Arrays.sort(数组,Collections.reverseOrder())。

调用的其实Arrays.sort的静态方法之一Arrays.sort(Integer[]a,Comparatorcmp)。

对于Collections.reverseOrder()官方解释: reverseOrder()方法用于获取一个比较有否就实现Comparable接口的对象的集合的自然顺序相反。

importjava.util.Arrays; importjava.util.Collections; publicclassMain{ publicstaticvoidmain(String[]args){ Double[]list_double=newDouble[10]; list_double[0]=1.2; list_double[1]=2.2; list_double[2]=8.2; list_double[3]=4.2; list_double[4]=7.2; list_double[5]=6.2; list_double[6]=5.2; list_double[7]=4.2; list_double[8]=9.2; list_double[9]=10.2; java.util.Arrays.sort(list_double); System.out.println("升序:"); for(doubleemp:list_double) { System.out.println(emp); } Arrays.sort(list_double,Collections.reverseOrder()); System.out.println("降序:"); for(doubleemp:list_double) { System.out.println(emp); } } }好劲的维   好劲的维  pal***@qq.com2年前(2020-08-10) 点我分享笔记 取消 分享笔记 昵称昵称(必填) 邮箱邮箱(必填) 引用地址引用地址 分类导航 HTML/CSSHTML教程HTML5教程CSS教程CSS3教程Bootstrap3教程Bootstrap4教程Bootstrap5教程FontAwesome教程Foundation教程JavaScriptJavaScript教程HTMLDOM教程jQuery教程AngularJS教程AngularJS2教程Vue.js教程Vue3教程React教程TypeScript教程jQueryUI教程jQueryEasyUI教程Node.js教程AJAX教程JSON教程Echarts教程Highcharts教程Google地图教程服务端Python教程Python2.x教程Linux教程Docker教程Ruby教程Java教程C教程C++教程Perl教程Servlet教程JSP教程Lua教程Rust教程Scala教程Go教程PHP教程数据结构与算法Django教程Zookeeper教程设计模式正则表达式Maven教程Verilog教程ASP教程AppML教程VBScript教程数据库SQL教程MySQL教程PostgreSQL教程SQLite教程MongoDB教程Redis教程Memcached教程数据分析Python教程NumPy教程Pandas教程Matplotlib教程Scipy教程R教程Julia教程移动端Android教程Swift教程jQueryMobile教程ionic教程Kotlin教程XML教程XML教程DTD教程XMLDOM教程XSLT教程XPath教程XQuery教程XLink教程XPointer教程XMLSchema教程XSL-FO教程SVG教程ASP.NETASP.NET教程C#教程WebPages教程Razor教程MVC教程WebForms教程WebServiceWebService教程WSDL教程SOAP教程RSS教程RDF教程开发工具Eclipse教程Git教程Svn教程Markdown教程网站建设HTTP教程网站建设指南浏览器信息网站主机教程TCP/IP教程W3C教程网站品质 Advertisement 反馈/建议 在线实例 ·HTML实例 ·CSS实例 ·JavaScript实例 ·Ajax实例 ·jQuery实例 ·XML实例 ·Java实例 字符集&工具 ·HTML字符集设置 ·HTMLASCII字符集 ·JS混淆/加密 ·PNG/JPEG图片压缩 ·HTML拾色器 ·JSON格式化工具 ·随机数生成器 最新更新 · JavaScript获取... · JavaScript实现... · HTMLDOMstyle... · HTMLDOMscroll... · HTMLDOMscroll... · HTMLDOMscroll... · Dockerstats命令 站点信息 · 意见反馈 · 免责声明 · 关于我们 · 文章归档 关注微信 Copyright©2013-2022菜鸟教程  runoob.comAllRightsReserved.备案号:闽ICP备15012807号-1 微信关注



請為這篇文章評分?