• ## List集合按字段排序并输出 sort stream java list 排序

先建立一个实体： 这个实体就是简单的学生表实体（共有id，name，age，createDatetime四个字段） ... /** * @author wang * @date 2018/11/29 ...public class StudentEntity implements Comparable&...
先建立一个实体：
这个实体就是简单的学生表实体（共有id，name，age，createDatetime四个字段）
package com.test.sort;

/**
* @author wang
* @date 2018/11/29
*/
public class StudentEntity implements Comparable<StudentEntity> {

private int id;
private String name;
private int age;
private String createDatetime;

public StudentEntity(int id, String name, int age, String createDatetime) {
this.id = id;
this.name = name;
this.age = age;
this.createDatetime = createDatetime;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public String getCreateDatetime() {
return createDatetime;
}

public void setCreateDatetime(String createDatetime) {
this.createDatetime = createDatetime;
}

@Override
public int compareTo(StudentEntity o) {
return name.compareTo(o.getName());
}

}
在main方法我们来实现各种情况的排序：
package com.test.sort;

import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;

/**
* @author wang
* @date 2018/11/29
*/
public class Stream {

public static void main(String[] args) {

//插入三条数据
List<StudentEntity> studentList = Arrays.asList(
new StudentEntity(1, "name1", 10, "2018-11-29"),
new StudentEntity(2, "name2", 8, "2018-11-30"),
new StudentEntity(3, "name3", 28, "2018-11-19")
);

//根据第一个字段id正序
List<StudentEntity> studentList1 = studentList.stream().sorted().collect(Collectors.toList());

//根据第一个字段id逆序
List<StudentEntity> studentList2 = studentList.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList());

//根据年龄正序（int类型）
List<StudentEntity> studentList3 = studentList.stream().sorted(Comparator.comparingInt(StudentEntity::getAge)).collect(Collectors.toList());

//根据年龄逆序（int类型）
List<StudentEntity> studentList4 = studentList.stream().sorted(Comparator.comparingInt(StudentEntity::getAge).reversed()).collect(Collectors.toList());

//根据时间正序（String类型）
List<StudentEntity> studentList5 = studentList.stream().sorted(Comparator.comparing(StudentEntity::getCreateDatetime)).collect(Collectors.toList());

//根据时间逆序（String类型）
List<StudentEntity> studentList6 = studentList.stream().sorted(Comparator.comparing(StudentEntity::getCreateDatetime).reversed()).collect(Collectors.toList());

//打印结果
studentList6.forEach(student -> System.out.println("id is " + student.getId() + " ;  name is " + student.getName() + ";  age is " + student.getAge() + ";  time is " + student.getCreateDatetime()));

}
}
配上张示例图片：

好啦，排序就完事儿了

展开全文
Super_King_ 2018-11-29 10:42:47

满意答案

yusoi
2013.07.06

采纳率：42%    等级：12
已帮助：11255人
自己参考下吧
import java.io.IOException;
public class Test {
public static void main(String[] args){
String s = "";
String s1 = "";
try{
System.out.println("请输入字符并以回车结束:");
//读入键盘输入
StringBuffer ss = new StringBuffer(s);
ss.reverse();//StringBuffer类的逆序函数
s1 = ss.toString();
System.out.println("你输入的是：" + s);
System.out.println("逆序以后是：" + s1);
} catch (IOException e){
e.printStackTrace();
} catch (Exception e){
e.printStackTrace();
} finally{
try{
br.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
10分享举报

展开全文
weixin_39848953 2021-03-07 21:22:16
• 1.将字符串倒序输出 //1.1直接遍历后倒序输出 public void reverseList(){ //1.将字符串如A excellent student倒序输出 String str = "A excellent student"; List list = new ArrayList<>(); //存放...
1.将字符串倒序输出
        //1.1直接遍历后倒序输出
public void reverseList(){
//1.将字符串如A excellent student倒序输出
String str = "A excellent student";
List list = new ArrayList<>();
//存放到一个数组里
for (int i = 0; i < str.length(); i++) {
}

StringBuilder sb = new StringBuilder();
for (int i = list.size()-1; i >=0; i--) {
sb.append(list.get(i));
}
System.out.println(sb);//tneduts tnellecxe A

}

//1.2利用Collections倒序
public void reverseList(){
//1.将字符串如A excellent student倒序输出
String str = "A excellent student";
List list = new ArrayList<>();
//存放到一个数组里
for (int i = 0; i < str.length(); i++) {
}
Collections.reverse(list);

StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
sb.append(list.get(i));
}
System.out.println(sb);//tneduts tnellecxe A

}

1.3利用StringBuffer的reverse
先将字符串转为charArray，遍历每个元素，存到StringBuffer中，然后reverse
String str = "A excellent student";
char[] charArray = str.toCharArray();
System.out.println(charArray);

StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < charArray.length; i++) {
stringBuffer.append(charArray[i]);
}
System.out.println(stringBuffer.reverse());
//A excellent student
//tneduts tnellecxe A
2.将字符串数组倒序输出
    public void reverseList(){
String[] strings = {"aa", "bb", "cc", "dd"};
Collections.reverse(Arrays.asList(strings));
System.out.println(Arrays.toString(strings)); //[dd, cc, bb, aa]
}

展开全文
wan_zaiyunduan 2020-05-19 00:39:39
• 一般我们用表格汇总整理好资料后，为了防止数据改动或丢失都会以PDF格式进行传阅更稳妥，但有时将Excel转换成的PDF却出现页数变多，或者有些列在其他页的情况，要怎么调整呢？ 其实我们只需要了解Excel转PDF的原理后...
一般我们用表格汇总整理好资料后，为了防止数据改动或丢失都会以PDF格式进行传阅更稳妥，但有时将Excel转换成的PDF却出现页数变多，或者有些列在其他页的情况，要怎么调整呢？
其实我们只需要了解Excel转PDF的原理后就比较好对症下药了。将office文档直接转成PDF一般都是虚拟打印的原理，所以我们在转换之前可以先通过打印预览看看总页数，如果有问题可以根据调整页面方向和根据参考线调整列宽确保在A4范围内就可以了。
接着我们再将调整过的Excel进行转换就一般不会有啥问题了，由于office的兼容问题选择的转换工具不同效果也可能不同，分享一个小编日常使用转换效果尚可的方法给大家。
首先打开speedpdf在线转换（直接百度搜索即可找到）后选择Excel转PDF进入转换，添加需要转换的表格文档后，点击进度条后面的转换就可以了，等待一会儿转换成功直接下载即可。
这款工具手机也能直接转换，不注册不登录直接转，当然我们最好先登录再转换，这样如果在转换过程中不小心刷新或者关闭了网页也不需要重新转换，直接在转换记录中查看并下载就可以了。
展开全文
cocowei0306 2021-04-21 17:59:21
• weixin_34161029 2015-09-25 15:09:21
• ## java递归入门题----求出一个字符串的倒序输出 java

duhaoyu110 2020-05-10 16:00:30
• qq_37860935 2020-08-22 16:51:09
• qq_33271461 2018-12-12 10:15:48
• ## 云顶之弈六法机器人，开局出钩瞬秒后排，后排都没有拿什么和我打 云顶之弈机器人法爆

weixin_40004081 2020-12-22 23:04:17
• weixin_42128963 2021-01-12 09:18:34
• OERR0R_ 2021-03-11 18:12:29
• qq_42331840 2019-04-02 11:19:00
• ## 计算机网络习题答案 计算机网络习题答案

qq_36206070 2019-05-07 16:48:38
• weixin_39950083 2020-11-06 17:54:56
• ## 米莱狄超级增强，机器人化身擎天柱，移速破千瞬秒敌方后排！ 米莱狄的机器人是

weixin_42561143 2020-12-23 03:36:41
• weixin_34258078 2018-12-27 10:05:40
• update7 2020-12-29 20:44:10

newman0708 2010-09-27 16:23:00
• ## 7-58 输出全排列 (20 分) c++

weixin_53046105 2021-09-10 11:33:22
• qq_41623154 2020-04-12 14:51:01
• JockLiu 2019-06-16 17:44:24
• weixin_33508642 2021-03-18 09:56:04
• weixin_30405421 2019-01-31 11:25:00
• weixin_39590739 2020-12-19 01:13:05
• qq_42331840 2019-03-17 21:53:00
• weixin_29092031 2021-08-13 02:47:16
• ## 士兵排队---统计每个士兵看到后排士兵的总数 C语言 c++

cannon0102 2013-03-18 19:44:00
• weixin_30399871 2017-08-28 17:37:00

...