调用:
//重复项有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. winform中设置窗体的默认焦点

    winform的窗体中,有时候需要设置默认焦点,有时候需要取消默认焦点. 设置默认焦点,最简单的方法就是设置这个控件的tabIndex,例:textBox1.TabIndex = 0; 也可以在窗体事 ...

  2. CANVAS 水波动态背景

    参考:https://github.com/cyclegtx/wave_background 做的水波背景,以后可能会用到哈! 效果如下: 代码如下: <!DOCTYPE html> &l ...

  3. STM32启动文件详细解析(V3.5.0) 以:startup_stm32f10x_hd.s为例

    我用的是IAR,这个貌似是MDK的,不过很有用,大家可以看一下 ;* 文件名 : startup_stm32f10x_hd.s ;* 库版本 : V3.5.0 ;* 说明: 此文件为STM32F10x ...

  4. 测试dockerfile

    测试dockerfile是否ok(比如我的Dockerfile在deploy目录下) docker build -t my_image -f deploy/Dockerfile . docker im ...

  5. mysql_fetch_row,mysql_fetch_array,mysql_fetch_object,mysql_fetch_assoc的区别!

    php从mysql中访问数据库并取得数据,取得结果的过程中用到好几个类似的方法,区别及用法值得区分一下,看下面的代码   代码如下: <?php $link=mysql_connect('loc ...

  6. git学习2:版本库

    创建版本库 版本库,又称仓库,英文名为repository,版本库内的所有文件都可以被Git管理起来,即每个文件的修改.删除,Git都能跟踪. 1,在目录中创建版本库 在目录中有两种创建版本库的方法, ...

  7. vbox丢失*MultiArch_amd64.msi或者*MultiArch_x86.msi重新制作

    1.去官网下载你缺少这个文件的那个版本的exe文件. 2.下载7-zip软件(就在百度下载,比较小). 3.用7-zip解压这个exe.会出现一个文件夹,大概名字为VirtualBox-4.3.12- ...

  8. mir [20161220]

    最近玩backmir,查询了一些资料,突然领悟到原来各个地方的boss攻击和防御都有一定的上限,而相对应的,玩家也有攻击和防御,只要玩家的攻防能对付boss的攻防,就可以无伤打boss. 小时候玩热血 ...

  9. 为 Docker Registry 增加 Nginx 前端

    其实Docker Registry 就是一个API backend,所以加一个Nginx前端有大大的好处,比如docker push 时增加用户名密码验证. 怎么加?请参考以下nginx配置 upst ...

  10. JavaScript 命名规则

    来源 :http://www.codelifter.com/main/tips/tip_020.shtml The following are the rules for naming JavaScr ...