java基础-Arrays类常用方法介绍
java基础-Arrays类常用方法介绍
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.Array类的概念
此类包含用来操作数组(比如排序和搜索)的各种方法。需要注意,如果指定数组引用为 null,则访问此类中的方法都会抛出空指针异常NullPointerException。
二.Arrays常用方法
1>.对数组升序排列(public static void sort(数组) )
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ package cn.org.yinzhengjie.demo; import java.util.Arrays; public class MathDemo {
public static void main(String[] args) {
int[] arr = {9,5,2,7,2,0,1,8};
System.out.print("排序前:");
printArray(arr);
Arrays.sort(arr);
System.out.print("排序后:");
printArray(arr);
} public static void printArray(int[] arr) {
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
System.out.println();
} } /*
以上代码执行结果如下:
排序前:9 5 2 7 2 0 1 8
排序后:0 1 2 2 5 7 8 9
*/
2>.数组的二分搜索法(public static int binarySearch(数组,被查找的元素))
返回元素在数组中出现的索引,如果元素不存在,则返回的是(-插入点-1),也就是说它会根据你需要查找的元素应该存在的位置索引,将该索引值再减去1即可。
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ package cn.org.yinzhengjie.demo; import java.util.Arrays; public class MathDemo {
public static void main(String[] args) {
int[] arr = {0,1,2,3,5,7,8,9,15,18,21};
int index = Arrays.binarySearch(arr, 10);
System.out.println(index);
index = Arrays.binarySearch(arr, 15);
System.out.println(index);
}
} /*
以上代码执行结果如下:
-9
8
*/
3>.将数组变成字符串(public static String toString(数组))
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ package cn.org.yinzhengjie.demo; import java.util.Arrays; public class MathDemo {
public static void main(String[] args) {
int[] arr = {0,1,2,3,5,7,8,9,15,18,21};
String s = Arrays.toString(arr);
System.out.println(s);
}
} /*
以上代码执行结果如下:
[0, 1, 2, 3, 5, 7, 8, 9, 15, 18, 21]
*/
三.小试牛刀
定义一个方法,接收一个数组,数组中存储10个学生考试分数,考方法要求返回考试分数最低的后三名考试分数。
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ package cn.org.yinzhengjie.demo; import java.util.Arrays;
import java.util.Scanner; public class ArrayDemo {
public static void main(String[] args) {
int[] arr = new int[10];
Scanner s = new Scanner(System.in);
int index = 0;
boolean flag = true;
while(flag) {
System.out.printf("请输入第%d学生的分数:",index+1);
String Input = s.next();
try {
int score = Integer.parseInt(Input); if(index ==9 ) {
flag = false;
}
arr[index++] = score;
}catch(NumberFormatException e) {
System.out.println("传入的数据有误!");
System.out.println(index);
}
}
int[] newArray = getTheLastThreeNumber(arr);
System.out.println("最后三名同学的成绩是:"+Arrays.toString(newArray));
} public static int[] getTheLastThreeNumber(int[] arr) {
//1>.对数组进行排序
Arrays.sort(arr);
//2>.将最后三个成绩存储到新的数组中
int[] result = new int[3];
System.arraycopy(arr, 0, result, 0, 3);
return result;
}
}
java基础-Arrays类常用方法介绍的更多相关文章
- java基础-BigDecimal类常用方法介绍
java基础-BigDecimal类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.BigDecimal类概述 我们知道浮点数的计算结果是未知的.原因是计算机二进制 ...
- java基础-BigInteger类常用方法介绍
java基础-BigInteger类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.BigInteger类概述 Java中long型为最大整数类型,对于超过long ...
- java基础-Math类常用方法介绍
java基础-Math类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Math类概念 Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函 ...
- java基础-System类常用方法介绍
java基础-System类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.System类概念 在API中system类介绍的比较简单,我们给出定义,system中 ...
- java基础-Integer类常用方法介绍
java基础-Integer类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们需 ...
- Java基础-Calendar类常用方法介绍
Java基础-Calendar类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Calendar类概念 Calendar 类是一个抽象类,它为特定瞬间与一组诸如 Y ...
- Java基础-Date类常用方法介绍
Java基础-Date类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.毫秒值概念 我们在查阅Date类的API文档时,会发现这样的一句话:"The cl ...
- Java中数组操作 java.util.Arrays 类常用方法的使用
任何一门编程语言,数组都是最重要和常用的数据结构之一,但不同的语言对数组的构造与处理是不尽相同的. Java中提供了java.util.Arrays 类能方便地操作数组,并且它提供的所有方法都是静态的 ...
- 【java】java.util.Arrays类常用方法
package Arrays类; import java.util.Arrays; public class TestArrays { public static void main(String[] ...
随机推荐
- 奔跑吧DKY——团队Scrum冲刺阶段-Day 2
今日完成任务 各个成员今日完成的任务(如果完成的任务为开发或测试任务,需给出对应的Github代码签入记录截图:如果完成的任务为调研任务,需给出对应的调研总结博客链接:如果完成的任务为学习技术任务,需 ...
- Sqlite数据库初步的了解
转载与:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/0714/1438.html 来自:泡在网上的日子. 和其他数据库一 ...
- 私人助手(Alpha)版使用说明
私人助手使用说明 私人助手这款软件是通过添加事件提醒,提醒你在合适的时间做该做的事,可以选择有多种提醒模式. 目前实现了对事件的添加和提醒功能,软件现在的情况如下: 1.添加事件 2.删除事件 3.事 ...
- 软工实践-Beta 冲刺 (2/7)
队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 1.界面的修改与完善 展示GitHub当日代码/文档签入记 ...
- 第一个spring冲刺团队贡献分(80分满分)
团队贡献分(80分满分): 李泳江 24 叶煜稳 26 谢洪跃 18 周伟雄 12
- 深入理解JAVA I/O系列五:对象序列化
序列化 对象序列化的目标是将对象保存到磁盘中,或者允许在网络中直接传输对象.对象序列化机制允许把内存中的JAVA对象转换成跟平台无关的二进制流,从而允许将这种二进制流持久地保存在磁盘上,通过网络将这种 ...
- httpclient的get和post
pom.xml <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId&g ...
- php 的stdClass类的简单实用
<?php $person = new stdClass(); $person->name = "yu"; $person->sex = "man&qu ...
- [转帖]Kerberos简介
1. Kerberos简介 https://www.cnblogs.com/wukenaihe/p/3732141.html 1.1. 功能 一个安全认证协议 用tickets验证 避免本地保存密码 ...
- js本地储存userData实例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head ...