java入门第一季_1.6_数组
来源:互联网 发布:centos net snmp 安装 编辑:程序博客网 时间:2024/05/21 10:35
既然选择了远方,便只顾风雨兼程。
数组
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。
Java语言中提供的数组是用来存储固定大小的同类型元素。
public class Demo1 { public static void main(String[] args) { // 定义一个数组,保存五名学生的成绩 int[] scores = { 78, 93, 97, 84, 63 }; // 输出数组中的第二个成绩 System.out.println("数组中的第2个成绩为:" + scores[1]); }}
数组的基本使用
1、 声明数组
语法: 数据类型[ ] 数组名;
或者 数据类型 数组名[ ];
其中,数组名可以是任意合法的变量名,如:
2、 分配空间
简单地说,就是指定数组中最多可存储多少个元素
语法: 数组名 = new 数据类型 [ 数组长度 ];
其中,数组长度就是数组中能存放元素的个数,如:
话说,我们也可以将上面的两个步骤合并,在声明数组的同时为它分配空间,如:
3、 赋值
分配空间后就可以向数组中放数据了,数组中元素都是通过下标来访问的,例如向 scores 数组中存放学生成绩
4、 处理数组中数据
我们可以对赋值后的数组进行操作和处理,如获取并输出数组中元素的值
在 Java 中还提供了另外一种直接创建数组的方式,它将声明数组、分配空间和赋值合并完成,如
它等价于:
使用循环操作 Java 中的数组
public static void main(String[] args) { // 定义一个数组,保存五名学生的成绩 int[] scores = { 78, 93, 97, 84, 63 }; //for循环打印 for (int i = 0; i < scores.length; i++) { System.out.print(scores[i]+" "); } System.out.println(); //foreach打印 //foreach是for语句的特殊简化版本,在遍历数组、集合时, foreach更简单便捷。 //for(元素类型 变量:遍历对象){ //执行的代码 //} for (int i : scores) { System.out.print(i+" "); } }
执行结果
78 93 97 84 63
78 93 97 84 63
编程练习
package com.zhb;public class Demo1 { public static void main(String[] args) { int[] nums = new int[] { 61, 23, 4, 74, 13, 148, 20 }; int max = nums[0]; // 假定最大值为数组中的第一个元素 int min = nums[0]; // 假定最小值为数组中的第一个元素 double sum = 0;// 累加值 double avg = 0;// 平均值 for (int i = 0; i < nums.length; i++) { // 循环遍历数组中的元素 // 如果当前值大于max,则替换max的值 if(nums[i]> max){ max = nums[i]; } // 如果当前值小于min,则替换min的值 if(nums[i]< min){ min = nums[i]; } // 累加求和 sum+=nums[i]; } // 求平均值 avg = sum/nums.length; System.out.println("数组中的最大值:" + max); System.out.println("数组中的最小值:" + min); System.out.println("数组中的平均值:" + avg); }}
输出结果
数组中的最大值:148
数组中的最小值:4
数组中的平均值:49.0
使用 Arrays 类操作 Java 中的数组
Arrays 类是 Java 中提供的一个工具类,在 java.util 包中。该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序、搜索等.
package com.zhb;import java.util.Arrays;public class Demo1 { public static void main(String[] args) { // 定义一个字符串数组 String[] hobbys = { "sports", "game", "movie" }; // 使用Arrays类的sort()方法对数组进行排序 Arrays.sort(hobbys); // 使用Arrays类的toString()方法将数组转换为字符串并输出 System.out.println( Arrays.toString(hobbys) ); }}
执行结果
[game, movie, sports]
java中的二维数组
所谓二维数组,可以简单的理解为是一种“特殊”的一维数组,它的每个数组空间中保存的是一个一维数组。
1、 声明数组并分配空间
或者
如:
2、 赋值
二维数组的赋值,和一维数组类似,可以通过下标来逐个赋值,注意索引从 0 开始
如:
3、 处理数组
二维数组的访问和输出同一维数组一样,只是多了一个下标而已。在循环输出时,需要里面再内嵌一个循环,即使用二重循环来输出二维数组中的每一个元素。如:
运行结果:
需要了解的:在定义二维数组时也可以只指定行的个数,然后再为每一行分别指定列的个数。如果每行的列数不同,则创建的是不规则的二维数组,如下所示:
运行结果为:
冒泡排序
package com.zhb;public class Demo1 { public static void main(String[] args) { //冒泡排序 int [] nums={1,13,2,56,23,46}; int tmp; for (int i = 0; i < nums.length-1; i++) { for (int j = 0; j < nums.length-i-1; j++) { if(nums[j]>nums[j+1]){ tmp = nums[j]; nums[j] = nums[j+1]; nums[j+1]= tmp; } } } for (int i : nums) { System.out.print(i+" "); } }}
输出结果
1 2 13 23 46 56
- java入门第一季_1.6_数组
- java入门第一季_1.2_环境变量
- java入门第一季_1.5_流程控制语句
- java入门第一季_1.7_对象
- java入门第一季_1.9_封装
- java入门第一季_1.1_java介绍
- java入门第一季_1.8_static关键字
- Java入门_数组
- java入门第一季_1.3_java的基本语法、标识符和关键字
- java入门第一季_1.4_java中的常用运算符
- Java入门 第一季第六章 数组
- 《java入门第一季》之二维数组
- 《java入门第一季》之二维数组
- JAVA入门第一季-5.数组
- 《java入门第一季》二维数组三个案例详解
- 分而治之_最大子数组_1
- 动态规划_最大子数组|||_1
- 动态规划_最大子数组||_1
- 素数距离
- jvm垃圾收集器配置-2
- 会话管理之Cookie
- SpringMVC+AJAX处理浏览器无法通过put delete方式请求问题
- Matrix Calculus
- java入门第一季_1.6_数组
- tcp之select多路复用
- xml文档声明
- UVA11609Teams
- POJ2187:Beauty Contest
- 【NOIP2008提高组T3】传纸条-双线程动态规划
- linux中任务的调度
- AC自动机の总结
- 如何用卷积神经网络CNN识别手写数字集?