调用:
//重复项有9、5、1、2
int[] ints = new int[]{9,4,7,8,2,5,1,6,2,5,9,1};
arrayIntTest(ints);
/////////////////////////////
//重复项有9、5、1、2
Integer[] integers = new Integer[]{9,4,7,8,2,5,1,6,2,5,9,1};
arrayIntegerTest(integers);
/////////////////////////////
//重复项有e、g
String[] strs = new String[]{"e","t","a","d","g","c","A","f","e","g","Q","h"};
arrayStringTest(strs);
 /**
* int[]数组操作 正序、倒叙、去重
* @param arr
*/
public static void arrayIntTest(int[] arr) {
int length = arr.length; //int[]正序
Arrays.sort(arr);
//int[]倒序
Arrays.sort(arr);
ArrayUtils.reverse(arr);
System.out.print(""); //int[]正序
int[] arr1 = Arrays.stream(arr).boxed().sorted().mapToInt(p -> p).toArray();
System.out.print("");
//int[]倒序
int[] arr2 = Arrays.stream(arr).boxed().sorted((s1, s2) -> {return s2 > s1 ? 1 : -1;}).mapToInt(p -> p).toArray();
System.out.print("");
//int[]去重
int[] arr3 = Arrays.stream(arr).boxed().distinct().mapToInt(p -> p).toArray(); } /**
* Integer[]数组操作 正序、倒叙、去重
* @param arr
*/
public static void arrayIntegerTest(Integer[] arr){
int length = arr.length; //Integer[]正序
Arrays.sort(arr);
//Integer[]倒序
Arrays.sort(arr, Collections.reverseOrder());
//Integer[]倒序
Arrays.sort(arr);
ArrayUtils.reverse(arr); //Integer[]去重
Set<Integer> set = new HashSet<Integer>();
set.addAll(Arrays.asList(arr));
Integer[] arr4 = new Integer[set.size()];
set.toArray(arr4); //Integer[]正序,去重
Set set1=new TreeSet(Arrays.asList(arr));
Integer[] arr5 = new Integer[set1.size()];
set1.toArray(arr5); //Integer[]正序
Integer[] arr1 = new Integer[arr.length];
Arrays.stream(arr).sorted().collect(Collectors.toList()).toArray(arr1);
//Integer[]倒序
Integer[] arr2 = new Integer[arr.length];
Arrays.stream(arr).sorted((s1, s2) -> {return s2>s1?1:-1;}).collect(Collectors.toList()).toArray(arr2); //Integer[]去重
List<Integer> list1 = Arrays.stream(arr).distinct().collect(Collectors.toList());
Integer[] arr3 = new Integer[list1.size()];
list1.toArray(arr3);
}
/**
* String[] 操作 正序、倒叙、去重
* @param arr
*/
public static void arrayStringTest(String[] arr){
int length = arr.length; //String[]正序
Arrays.sort(arr);
//String[]倒序
Arrays.sort(arr, Collections.reverseOrder()); //String[]正序 不区分大小写
Arrays.sort(arr, String.CASE_INSENSITIVE_ORDER);
//String[]倒序 不区分大小写
Arrays.sort(arr, String.CASE_INSENSITIVE_ORDER);
Collections.reverse(Arrays.asList(arr)); //String[]去重
Set<String> set = new HashSet<String>();
set.addAll(Arrays.asList(arr));
String[] arr4 = new String[set.size()];
set.toArray(arr4); //String[]正序,去重
Set set1=new TreeSet(Arrays.asList(arr));
String[] arr5 = new String[set1.size()];
set1.toArray(arr5); //String[]去重
List<String> list1 = Arrays.stream(arr).distinct().collect(Collectors.toList());
String[] arr1 = new String[list1.size()];
list1.toArray(arr1);
}

此代码只是练习,有问题大家随时沟通此片练习,有诸多累赘,请大家选择合适的运用。

从今日起,由于形势所迫转java,java随笔今日正式开写,.net暂时告一段落。说多了都是泪。。。

【java基础学习一】int[]、Integer[]、String[] 排序( 正序、倒叙)、去重的更多相关文章

  1. Java基础学习【字符串倒序输出+排序】

    字符串逆序输出 import java.util.*; public class Main{ public static void main(String [] args) { //字符串逆序输出 S ...

  2. Java基础学习(4)

    Java基础学习(四) String类 特点:创建后不可再修改,看起来的修改只是创建了新的对象 常用方法 StringBuilder类 目的:解决String类频繁创建对象的问题 常用方法 特点:非线 ...

  3. JAVA基础学习-集合三-Map、HashMap,TreeMap与常用API

    森林森 一份耕耘,一份收获 博客园 首页 新随笔 联系 管理 订阅 随笔- 397  文章- 0  评论- 78  JAVA基础学习day16--集合三-Map.HashMap,TreeMap与常用A ...

  4. 尚学堂JAVA基础学习笔记

    目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...

  5. Java基础学习中一些词语和语句的使用

    在Java基础学习中,我们刚接触Java会遇到一些词和语句的使用不清的情况,不能很清楚的理解它的运行效果会是怎么样的,如:break,continue在程序中运行效果及跳转位置, 1.先来看看brea ...

  6. java基础解析系列(二)---Integer

    java基础解析系列(二)---Integer 前言:本系列的主题是平时容易疏忽的知识点,只有基础扎实,在编码的时候才能更注重规范和性能,在出现bug的时候,才能处理更加从容. 目录 java基础解析 ...

  7. Java基础扫盲系列(-)—— String中的format

    Java基础扫盲系列(-)-- String中的format 以前大学学习C语言时,有函数printf,能够按照格式打印输出的内容.但是工作后使用Java,也没有遇到过格式打印的需求,今天遇到项目代码 ...

  8. Java基础学习笔记(一)

    Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...

  9. [转帖]java基础学习总结——多态(动态绑定)

    https://www.cnblogs.com/xdp-gacl/p/3644035.html 多态的概念 java基础学习总结——多态(动态绑定) 一.面向对象最核心的机制——动态绑定,也叫多态

随机推荐

  1. AXIS最佳实践

    前言: Axis是apache一个开源的webservice服务,需要web容器进行发布.本节主要用于介绍使用Axis开发webservice,包括服务端的创建.webservice的部署.客户端的调 ...

  2. DBMS_OUTPUT in SQL Developer

    I fell sad for all the programmers(including) that has to SQL Developer as sql IDE. However, if you ...

  3. 将页面打印成excel

    在servlet中调用 try { File fileWrite = new File("D:/Write.xls"); fileWrite.createNewFile(); Ou ...

  4. android模拟器停在Waiting for HOME解决方案

    直接打开Android SDK Manager然后再从Android SDK Manager里的tools打开Android AVD Manager,删除掉在Eclipse里创建的模拟器.并在新建一个 ...

  5. vmware安装无法打开内核设备 \\.\Global\vmx86: 系统找不到指定的文件

    刚刚安装好了虚拟机,Windows XP 64bit Professional,安装好了开发环境,然后重启机器后虚拟机就打不开了,提示“vmware安装无法打开内核设备 \\.\Global\vmx8 ...

  6. 优先级反转实验,使用信号量实现【RT-Thread学习笔记 5】

    RTOS中很经典的问题.就是在使用共享资源的时候,优先级低的进程在优先级高的进程之前执行的问题.这里模拟这种情况. 下面的实验模拟了优先级反转的情况: 先定义三个线程: //优先级反转实验 rt_se ...

  7. Eclipse几个版本号的区别

    查看Eclipse的版本号: 1. 找到eclipse安装目录 2. 进入readme文件夹,打开readme_eclipse.html 3. readme_eclipse.html呈现的第二行即数字 ...

  8. CGI

    CGI的工作原理一般是这么定义的: 客户端web浏览器浏览某个主页后,利用一定的方式提交数据,并通过HTTP协议向Web服务器发出请求,服务器端的HTTP Daemon(守护进程)将描述的主页信息通过 ...

  9. shared_ptr 线程安全

    Then what's really happening is TWO different sections of memory are being allocated. It's done at o ...

  10. android 代码设置progressBar 颜色

    void test() { LinearLayout linearLayout = new LinearLayout(this); ProgressBar progressBar = new Prog ...