java中如何把分割线输出来_Java流分割线并存储在不同的对象中

我正在尝试理解java 8的Streams.目前,我有一个这种格式的.txt文件:

2011-11-28 02:27:59 2011-11-28 10:18:11 Sleeping

2011-11-28 10:21:24 2011-11-28 10:23:36 Toileting

2011-11-28 10:25:44 2011-11-28 10:33:00 Showering

2011-11-28 10:34:23 2011-11-28 10:43:00 Breakfast

这3个“项目”总是由TAB分隔.我想要做的是使用属性(String类型)声明一个类MonitoredData

start_time end_time activity

我想要实现的是使用流从文件中读取数据并创建MonitoredData类型的对象列表.

在阅读了Java 8后,我设法编写了以下内容,但后来我走到了尽头

public class MonitoredData {

private String start_time;

private String end_time;

private String activity;

public MonitoredData(){}

public void readFile(){

String file = "Activities.txt"; //get file name

//i will try to convert the string in this DateFormat later on

SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

//Store the lines from the file in Object of type Stream

try (Stream stream = Files.lines(Paths.get(file))) {

stream.map(line->line.split("\t"));

} catch (IOException e) {

e.printStackTrace();

}

}

}

好吧,不知怎的,我必须拆分每一行并将其存储在一个适合MonitoredData属性的Object中.我怎么做?

解决方法:

您所要做的就是添加另一个地图操作,如下所示:

stream.map(line -> line.split("\t"))

.map(a -> new MonitoredData(a[0], a[1], a[2]))

.collect(Collectors.toList());

然后使用toList收集器收集到列表.

标签:lines,java,java-8,java-stream,split

来源: https://codeday.me/bug/20190828/1747373.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java菜单条、菜单、菜单项是Java GUI编程常用的组件,可以用来创建各种类型的菜单。其,菜单条是一个水平排列的菜单容器,用于显示一组相关的菜单;菜单是一个垂直排列的菜单容器,用于显示一组命令或选项;菜单项是菜单的一个选项,可以被单击以执行相应的操作。 为了在Java应用程序创建菜单条、菜单和菜单项,可以使用JMenuBar、JMenu和JMenuItem类。下面是一个使用这些类创建菜单条、菜单和菜单项的示例代码: ``` import javax.swing.*; public class MenuExample { public static void main(String[] args) { // 创建一个顶层窗口 JFrame frame = new JFrame("菜单示例"); // 创建一个菜单条 JMenuBar menubar = new JMenuBar(); // 创建一个菜单 JMenu fileMenu = new JMenu("文件"); // 创建菜单项 JMenuItem openItem = new JMenuItem("打开"); JMenuItem saveItem = new JMenuItem("保存"); JMenuItem exitItem = new JMenuItem("退出"); // 将菜单项添加到菜单 fileMenu.add(openItem); fileMenu.add(saveItem); fileMenu.addSeparator(); // 添加分割线 fileMenu.add(exitItem); // 将菜单添加到菜单条 menubar.add(fileMenu); // 将菜单条添加到顶层窗口 frame.setJMenuBar(menubar); // 设置窗口大小并显示窗口 frame.setSize(300, 200); frame.setVisible(true); } } ``` 在上面的示例代码,我们创建了一个顶层窗口,然后创建了一个菜单条和一个菜单,并将菜单添加到菜单条。接着,我们创建了三个菜单项,其一个菜单项之后添加了一个分割线,最后将菜单项添加到菜单。最后,我们将菜单条添加到顶层窗口,并显示窗口。 当运行这个示例程序时,将会显示一个带有一个文件菜单的窗口,点击文件菜单将会弹出包含三个菜单项的菜单。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值