1.计算程序运行时常

  1. long start = System.currentTimeMillis();
  2.  
  3.  
  4.  
  5.  
  6. long end = System.currentTimeMillis();
  7.  
  8. System.out.println("程序运行时常 : "+(end-start)+" ms");

2.文件读写

  1. String fileName = "/home/test";//定义写文件路径
  2. FileWriter writer = null;//文件读写流
  3. public void write_To_File(){
  4. writer = new FileWriter(fileName, true);
  5. try {
  6. writer.write("Hello World!");
  7. } catch (IOException e) {
  8. // TODO Auto-generated catch block
  9. e.printStackTrace();
  10. }
  11. }

3.立flag

  设置布尔变量,用来在程序运行时对一些逻辑进行标记。其中false和true需要自己定义其含义。因此在设置flag的时,需要注意false以及true对应的含义。否则这些逻辑上的错误很难被检查出来。

  1. boolean flag = true;


  2. If()
  3. }

  4. /* 根据程序运行逻辑进行对flag的修改 */
  5. else{
  6.  
  7. }

4.使用HashMap

  声明myMap为HashMAp类型

  1. HashMap<String,String> myMap=new HashMap<String,String>();

  其中HashMap中的第一个参数,第二个参数为String

  可以使用HashMap来构造key,value一一对应的结构。

  例如:学号对应一个姓名

  

则可以使用put来构造HashMap

  1. myMap.put("1","张三");
  2.  
  3. myMap.put("2","李四");
  4.  
  5. myMap.put("3","王五");
  6.  
  7. myMap.put("4","赵六");

  可以使用get来查看key对应的value

  1. myMap.get("1");//会返回张三

5.将excel的去重后内容放到list中

  1. String path = "/home/allNumber.csv";
  2. public static ArrayList<String> myList = new ArrayList<String>();//声明list, 内容为String类型
  3. public static void createList(String path) throws IOException{
  4. BufferedReader reader = new BufferedReader(new FileReader(new File(path)));
  5. String line = "";
  6. while((line=reader.readLine())!=null){//赋值并进行判断
  7. if(!myListlist.contains(line )){//去重
  8. myList.add(line );
  9. }
  10. }
  11. reader.close();
  12. }

  首先声明文件读写流,传入参数path为文件路径;

  while循环体中需要判断是否已经到了文件的末尾,同时进行赋值操作;

  由于需要进行去重操作,只需要每次向myList中添加数据之前前进行判断该数据是否已经存在;

  记住最后要将文件的读写流关闭 reader.close();

6.定时进行写文件

  使用静态方法

  1. public class test {
  2. public static void executeFixedRate() throws IOException {
  3. ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
  4. /*
  5. * 参数1 new count() 表示运行的方法
  6. * 参数2 0 表示第一次调用等待 0ms 之后运行count中的run方法
  7. * 参数3 5000 表示之后每经过5000ms再次调用
  8. * 参数4 TimeUnit.MILLISECONDS 设置时间为毫秒
  9. */
  10. executor.scheduleAtFixedRate(new count(),0,5000,TimeUnit.MILLISECONDS);
  11. }
  12. static class count implements Runnable{
  13.  
  14. private String fileName = "/home/test";
  15. private FileWriter writer = null;
  16. //设置日期格式
  17. private static DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  18. public void run(){//运行代码
  19. try {
  20. writer = new FileWriter(fileName, true);
  21. writer.write("Hello World"+df.format(new Date())+"\n");
  22. writer.flush();
  23.  
  24. } catch (IOException e) {
  25. // TODO Auto-generated catch block
  26. e.printStackTrace();
  27. }
  28. }
  29. }
  30.  
  31. public static void main(String[] args) throws Exception {
  32. test.executeFixedRate();
  33. }
  34. }

7.第二种定时写文件

  使用Timer类

  1. public class test {
  2.  
  3. private static void executeFixedRate() {
  4. Timer timmerTask = new Timer();
  5. Calendar calEnviron = Calendar.getInstance();
  6. // 每00:00:00 开始执行
  7. calEnviron.set(Calendar.HOUR_OF_DAY, 0);
  8. calEnviron.set(Calendar.MINUTE, 0);
  9. calEnviron.set(Calendar.SECOND, 0);
  10.  
  11. // date制定间
  12. Date dateSetter = new Date();
  13. dateSetter = calEnviron.getTime();
  14. // nowDate前间
  15. Date nowDateSetter = new Date();
  16. // 所间差距现待触发间间隔
  17. long intervalEnviron = dateSetter.getTime() - nowDateSetter.getTime();
  18. if (intervalEnviron < 0) {
  19. calEnviron.add(Calendar.DAY_OF_MONTH, 1);
  20. dateSetter = calEnviron.getTime();
  21. intervalEnviron = dateSetter.getTime() - nowDateSetter.getTime();
  22. }
  23. timmerTask.schedule(new count(), intervalEnviron, 1 * 1000 * 60 * 60 * 24);
  24. }
  25. static class count implements Runnable{
  26.  
  27. private String fileName = "/home/test";
  28. private FileWriter writer = null;
  29. //设置日期格式
  30. private static DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  31. public void run(){//运行代码
  32. try {
  33. writer = new FileWriter(fileName, true);
  34. writer.write("Hello World"+df.format(new Date())+"\n");
  35. writer.flush();
  36.  
  37. } catch (IOException e) {
  38. // TODO Auto-generated catch block
  39. e.printStackTrace();
  40. }
  41. }
  42. }
  43. public static void main(String[] args) throws Exception {
  44. test.executeFixedRate();
  45. }
  46. }

Java中一些常用的方法的更多相关文章

  1. Java中File常用的方法汇总

    创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir() 在指定位置创建一个单级文件夹.mkdirs() 在指定位置创建 ...

  2. Java中的常用异常处理方法

    觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗? 1 OutputStreamWriter out = ... 2 ...

  3. 【转】Java中File常用的方法汇总

    创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir() 在指定位置创建一个单级文件夹.mkdirs() 在指定位置创建 ...

  4. Java获取各种常用时间方法大全

    Java获取各种常用时间方法大全 package cc.javaweb.test; Java中文网,Java获取各种时间大全 import java.text.DateFormat; import j ...

  5. java中最常用jar包的用途说明

    java中最常用jar包的用途说明,适合初学者 jar包 用途 axis.jar SOAP引擎包 commons-discovery-0.2.jar 用来发现.查找和实现可插入式接口,提供一些一般类实 ...

  6. Java中最常用的集合类框架之 HashMap

    一.HashMap的概述 HashMap可以说是Java中最常用的集合类框架之一,是Java语言中非常典型的数据结构.      HashMap是基于哈希表的Map接口实现的,此实现提供所有可选的映射 ...

  7. Java中wait和sleep方法的区别

    1.两者的区别 这两个方法来自不同的类分别是Thread和Object 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法(锁代码块和方法锁). wait ...

  8. java中的常用类(二)

    java中的常用类(二) Math类 Math类的声明:public final class Math extends Object Math类是与数学计算有关的类,里面的方法都是静态方法,直接使用类 ...

  9. 转 Java中wait和sleep方法的区别

    1.两者的区别 这两个方法来自不同的类分别是Thread和Object 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法(锁代码块和方法锁). wait ...

随机推荐

  1. SurfaceView 绘制分形图

    之前一直做的是应用类,这次抽时间,参考网上资料实践了下SurfaceView.目标是在页面上画一个科赫曲线的分形图. 代码如下: package com.example.fredric.demo02; ...

  2. 虚拟机体验之 QEMU 篇

    引言 说起虚拟机,大家都不陌生.需要使用虚拟机的场景也非常的多,比如有志于写操作系统的同志,往往需要一个虚拟机来运行和调试他写的系统:再比如喜欢研究网络体系结构的朋友,需要在自己的电脑上虚拟出 N 个 ...

  3. some OpenGL constants

    some OpenGL constants This is from (https://github.com/peterderivaz/pyopengles/blob/master/gl2.py) G ...

  4. Android中自定义样式与View的构造函数中的第三个参数defStyle的意义

    零.序 一.自定义Style 二.在XML中为属性声明属性值 1. 在layout中定义属性 2. 设置Style 3. 通过Theme指定 三.在运行时获取属性值 1. View的第三个构造函数的第 ...

  5. Android笔记——Application的作用

    一.Application是什么 Application和Actovotu,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象, ...

  6. 4、DES和RSA简介

    DES是分组加密算法,速度快,使用单一密钥,加密解密都使用同一个密钥,一般用于大量数据加密,目前处于半淘汰状态. RSA算法是流式加密算法,速度慢,但是使用成对的密钥,加密解密使用不同的密钥,有利于保 ...

  7. Android ScrollView监听滑动到顶部和底部的两种方式(你可能不知道的细节)

    Android ScrollView监听滑动到顶部和底部,虽然网上很多资料都有说,但是不全,而且有些细节没说清楚 使用场景: 1. 做一些复杂动画的时候,需要动态判断当前的ScrollView是否滚动 ...

  8. C#使用Jquery zTree实现树状结构显示_异步数据加载

    JQuery-Ztree下载地址:https://github.com/zTree/zTree_v3 JQuery-Ztree数结构演示页面:  http://www.treejs.cn/v3/dem ...

  9. img标签使用绝对路径无法显示图片

    说明:  图片的磁盘路径斜杠使用:右斜杠"\",而图片的网络路径使用左斜杠"/",注意加以区分. 如果这张图片属于服务器图片或者网络图片,我们必须在Img标签里 ...

  10. ASP.NET用QQ,网易发送邮件以及添加附件

    教程:ASP.NET用QQ,网易发送邮件以及添加附件 这是我用QQ邮箱出现的异常: 命令顺序不正确. 服务器响应为:Error: need EHLO and AUTH first !无法从传输连接中读 ...