当前位置:首页 > 技术分析 > 正文内容

全新Java入门到架构师教程之Java15数组案例实现和Arrays

ruisui881个月前 (05-18)技术分析19

上篇文章写了《全新Java入门到架构师课程之Java15编程基础-数组(1):数组声明、初始化、数组元素的界限和遍历》,这次将接下去说java15编程之数组案例实现和Arrays

一、数组基本练习

//A:遍历int类型的数组 依次输出每个数组元素
public static void printArray(int[] arr){
	//循环遍历数组下标
	for(int i=0;i<arr.length;i++){
		System.out.println("输出int类型数组的每一个元素"+arr[i]);
	}
}


//B:逆序:倒叙输出数组元素
public static void printArr(String[] arr){
	for(int i=arr.length-1;i>=0;i--){
		System.out.println(arr[i]);
	}
}


//C:最值:获取数组中的最大值和最小值
public static void maxMinValue(int[] arr){
	//假设数组中的第一个元素当成最大值
	int max=arr[0];
	//假设数组中的第一个元素当成最大值
	int min=arr[0];
	//遍历数组
	for(int i=0;i<arr.length;i++){
		//比较数组元素与max
		if(max<arr[i]){
			max=arr[i];
		}
		//比较数组元素与min
		if(min>arr[i]){
			min=arr[i];
		}
		System.out.println("数组中最大的值为max"+max);
		System.out.println("数组中最小的值为min"+min);
	}
}

二、经典案例实现-点名器

运行代码,随机打印班级同学名字。

//1.数组存储姓名,用String数据类型
String[] names={"杰克","戴维琼斯","伊丽莎白","爱丽丝"};	
//2.遍历数组,打印出所有姓名
for(int i=0;i<names.length;i++){
	System.out.println(names[i]);
}	
//3.随机出一个人名
//利用随机数,生成一个证书,作为索引,到数组中查找对应的元素
Random ran=new Random();
//随机数的范围是[0,names.length-1]
int index=ran.nextInt(names.length); //括号中填写的最大数是获取不到的,因为nextInt获取的范围是左闭右开区间
System.out.println(names[index]);

本系列文章是某机构全新java大数据架构师课程中的Java15编程基础部分课程,如需全套完整视频教程和资料请私聊我。

三、Arrays

该类提供了关于数组操作的API

1、如何查看API:


2、Arrays中常用方法

  • 打印数组----toString方法。
  • 比较两个数组是否相同----equals方法。
  • 数组排序----sort方法。
  • 数组查找----binarySearch 方法。
  • 数组拷贝----copyOf方法。
  • 数组拷贝----copyOfRange方法。
String[] arr1={"hello","shsxt"};
String[] arr2={"hello","shsxt"};
System.out.println(arr1.equals(arr2));  //false
//1.Arrays.equals() 先判断两个数组的length是否相等,如果相等,再比内容,如果不相等,直接返回false
System.out.println(Arrays.equals(arr1, arr2));
//2.Arrays.toString 字符串形式打印数组信息
System.out.println(Arrays.toString(arr1)); 

//3.Arrays.sort()  升序
int[] arr3={12,7,0,6,-32};
Arrays.sort(arr3); //-32 0 6 7 12 
String[] arr4={"ab","a","bc","abc"};  //根据Unicode表中的值
Arrays.sort(arr4); //a ab abc bc 

//4.Arrays.binarySearch( 数组, 元素) ) :二分法查找 查找元素在数组中出现的索引
//前提:先升序排序,才能二分法查找
//找到返回索引,找不到返回-(插入点)-1
Arrays.sort(arr3); 
System.out.println(Arrays.binarySearch( arr3, 16)); // -6

今天就讲到这里,如需完整体系Java架构师大数据课程,请私聊哦

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/4147.html

标签: 截取数组
分享给朋友:

“全新Java入门到架构师教程之Java15数组案例实现和Arrays” 的相关文章

【Vue3 基础】05.组件化

这是 Vue3 + Vite + Pinia +TS + Element-Plus 实战系列文档。最近比较忙没什么时间写文章,争取早日把这个系列完结吧~生命周期和模板引用在本章之前,我们通过响应式 api 和声明式渲染,处理了 DOM 的更新,但光是这些,对于一些复杂的需要手动操作 DOM 的情况,...

如何在GitLab上回退指定版本的代码?GitLab回退指定版本问题分析

在Git中,回退到指定版本并不是删除或撤销之前的提交,而是创建一个新的提交,该提交包含指定版本的内容。这意味着您需要将当前代码更改与指定版本之间的差异进行比较,并将其合并到一个新的提交中。如果您没有更新本地代码,并且您希望将 GitLab 仓库回退到指定版本,您可以使用以下命令:git fetchg...

HTML5学习笔记三:HTML5语法规则

1.标签要小写2.属性值可加可不加””或”3.可以省略某些标签 html body head tbody4.可以省略某些结束标签 tr td li例:显示效果:5.单标签不用加结束标签img input6.废除的标签font center big7.新添加的标签将在下一HTML5学习笔记中重点阐述。...

Vue实战篇|使用路由管理用户权限(动态路由)

权限控制是后台管理系统比较常见的需求,如果我们需要对某些页面的添加权限控制的话,那我们可以在路由管理中的权限做一些校验,没有通过权限校验的给出相应的提示或者直接跳转到报错页面。跟着我一起来学vue实战篇路由管理权限吧!权限校验函数getCurrentAuthority()函数用于获取当前用户权限,一...

「干货」Vue+Element前端导入导出Excel

作者:xrkffgg转发链接:https://segmentfault.com/a/11900000189936191 前言1.1 业务场景由前台导入Excel表格,获取批量数据。根据一个数组导出Excel表格。2 实现原理2.1 引入工具库file-saver、xlsx、script-loader...

Vue中的路由配置常用属性

router:路由页面跳转的核心库;引入路由:import VueRouter from 'vue-router'; 注册路由:const router = new VueRouter({ })mode:模式路由有hash history两种模式:hash模式URL中包含#,#后边是...