「java创造列表」java实现列表

博主:adminadmin 2022-12-04 13:45:06 74

今天给各位分享java创造列表的知识,其中也会对java实现列表进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何用Java实现文件列表?

用递归实现。

1. import java.io.File;

2. import java.io.FileFilter;

3. import java.io.FilenameFilter;

4.

5. /**

6. * 文件列表。br

7. * 可以指定过滤条件。

8. *

9. * @author leo

10. *

11. */

12. public class FileList {

13.

14. /**

15. * @param args

16. */

17. public static void main(String[] args) {

18. File dir = new File(".");

19.

20. // 所有的文件和目录名

21. String[] children = dir.list();

22. if (children == null) {

23. // 不存在或者不是目录

24. } else {

25. System.out.println("#### 1 ####");

26. for (int i = 0; i children.length; i++) {

27. // 文件名

28. System.out.println(children[i]);

29. }

30. }

31.

32. // 可以指定返回文件列表的过滤条件

33. // 这个例子不返回那些以.开头的文件名

34. FilenameFilter filter = new FilenameFilter() {

35. public boolean accept(File dir, String name) {

36. return !name.startsWith(".");

37. }

38. };

39. children = dir.list(filter);

40. System.out.println("#### 2 ####");

41. for (int i = 0; i children.length; i++) {

42. // 文件名

43. System.out.println(children[i]);

44. }

45.

46. // 也可以拿到文件对象的列表

47. File[] files = dir.listFiles();

48. System.out.println("#### 3 ####");

49. for (int i = 0; i files.length; i++) {

50. // 文件名

51. System.out.println(files[i].getName());

52. }

53.

54. // 下面这个过滤条件只返回目录

55. FileFilter fileFilter = new FileFilter() {

56. public boolean accept(File file) {

57. return file.isDirectory();

58. }

59. };

60. files = dir.listFiles(fileFilter);

61. System.out.println("#### 4 ####");

62. for (int i = 0; i files.length; i++) {

63. // 文件名

64. System.out.println(files[i].getName());

65. }

66.

67. }

68.

69. }

java如何创建列表框?

默认的JList不能编辑,要编辑的话要手动设置内部数据结构。最简单的方法是用DefaultListModel

DefaultListModel listModel = new DefaultListModel();

JList list = new JList(listModel);

DefaultListModel 里面的一些方法:

void add(int index, Object element)

void addElement(Object obj)

void setElementAt(Object obj, int index)

boolean removeElement(Object obj)

JAVA制作一个任务列表

JAVA 的列表 方式 迅雷的 是执行任务后定时排队列表

以下思路 ,

1)java.util.Timer.

2)ServletContextListener.

3)org.springframework.scheduling.timer.ScheduledTimerTask

1)java.util.Timer

这个方法应该是最常用的,不过这个方法需要手工启动你的任务:

Timer timer=new Timer();

timer.schedule(new ListByDayTimerTask(),10000,86400000);

这里的ListByDayTimerTask类必须extends TimerTask里面的run()方法。

2)ServletContextListener

这个方法在web容器环境比较方便,这样,在web server启动后就可以

自动运行该任务,不需要手工操作。

将ListByDayListener implements ServletContextListener接口,在

contextInitialized方法中加入启动Timer的代码,在contextDestroyed

方法中加入cancel该Timer的代码;然后在web.xml中,加入listener:

listener

listener-classcom.sysnet.demo.util.MyTimerTask/listener-class

/listener

3)org.springframework.scheduling.timer.ScheduledTimerTask

如果你用spring,那么你不需要写Timer类了,在schedulingContext-timer

.xml中加入下面的内容就可以了:

?xml version="1.0" encoding="UTF-8"?

!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" ""

beans

bean id="timer" class="org.springframework.scheduling.timer.TimerFactoryBean"

property name="scheduledTimerTasks"

list

ref local="MyTimeTask1"/

/list

/property

/bean

bean id="MyTimeTask" class="com.qq.timer.ListByDayTimerTask"/

bean id="MyTimeTask1" class="org.springframework.scheduling.timer.ScheduledTimerTask"

property name="timerTask"

ref bean="MyTimeTask"/

/property

property name="delay"

value10000/value

/property

property name="period"

value86400000/value

/property

/bean

/beans

下面给出方法2的一个例子供大家参考:

Java代码:

import java.util.Timer;

import javax.servlet.ServletContextEvent;

import javax.servlet.ServletContextListener;

public class MyTimerTask implements ServletContextListener{

private Timer timer = null;

@Override

public void contextDestroyed(ServletContextEvent event) {

// TODO Auto-generated method stub

timer.cancel();

event.getServletContext().log("定时器销毁");

System.out.println("停止备份程序……");

}

@Override

public void contextInitialized(ServletContextEvent event) {

//在这里初始化监听器,在tomcat启动的时候监听器启动,考试,大提示可以在这里实现定时器功能

timer = new Timer(true);

event.getServletContext().log("定时器已启动");//添加日志,可在tomcat日志中查看到

timer.schedule(new exportHistoryBean(event.getServletContext()),0,5*1000);//调用exportHistoryBean,0表示任务无延迟,5*1000表示每隔5秒执行任务,60*60*1000表示一个小时;

}

}

import java.util.Calendar;

import java.util.TimerTask;

import javax.servlet.ServletContext;

public class exportHistoryBean extends TimerTask

{

private static final int C_SCHEDULE_HOUR = 0;

private static boolean isRunning = false;

private ServletContext context = null;

public exportHistoryBean(ServletContext context)

{

this.context = context;

}

@Override

public void run()

{

Calendar c = Calendar.getInstance();

if(!isRunning)

{

if(C_SCHEDULE_HOUR == c.get(Calendar.HOUR_OF_DAY))

{

isRunning = true;

context.log("开始执行指定任务");

isRunning = false;

context.log("指定任务执行结束");

}

else

{

context.log("上一次任务执行还未结束");

}

}

}

}

web.xml里加入一下代码:

listener

listener-classcom.sysnet.demo.util.MyTimerTask/listener-class

/listener

java创造列表的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java实现列表、java创造列表的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-04,除非注明,否则均为首码项目网原创文章,转载请注明出处。