`
猪↘專屬|华
  • 浏览: 164026 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java编程中常用到的一些方法,日期,排序

    博客分类:
  • java
阅读更多

常用方法总结,流水号,随机数,日期,日期比较....

 

package util;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.security.MessageDigest;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Random;

import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


/**
 *
 * @author 朱湘鄂
 * @version 1.0
 * @date 2010-11-29
 */
public class Util {
 
 
//时间类
 
 //返回String类型的时间
 public static String returnStringDate(){
  Date date = new Date();//默认的输出方式为:Tue Nov 30 14:25:24 CST 2010
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//转换为:年月日,时分秒的形式
  //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  //SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
  System.out.println(sdf.format(date));
  return sdf.format(date);
 }
 
 //返回Date类型的时间
 public static Date returnDate(){
  Date date = new Date();//默认的输出方式为:Tue Nov 30 14:25:24 CST 2010
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//转换为:年月日,时分秒的形式
  //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  //SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
  try {
   date = sdf.parse(sdf.format(date));
  } catch (ParseException e) {
   e.printStackTrace();
  }
  System.out.println(sdf.format(date));
  return date;
 }
 
 //将String类型的yyyy-MM-dd转换为Date类型
 public static Date convertStringToDate(String strDate){
  Date date = new Date();
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  //格式化时间 yyyy-MM-dd
  try {
   date = sdf.parse(sdf.format(strDate));
  } catch (ParseException e) {
   e.printStackTrace();
  }
  System.out.println(date);
  return date;
 }
 
 /**
     * 比较当前日期和指定日期 return boolean
     * 如果当前日期在指定日期之前返回true否则返回flase
     */
    public static boolean dateCompare(String str){
        boolean flag = false;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String isDate = sdf.format(new Date());
        java.util.Date date1;
        java.util.Date date0;
        try {
            date1 = sdf.parse(str);
            date0= sdf.parse(isDate);//当前日期
            if(date0.after(date1)){
             flag = true;
            }
        } catch (ParseException e) {
         flag = false;
        }
        return flag;
    }
       
 // 付费用到的时间类型
 public static String dateInPayment() {
  SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyyMMddHHmmss");
  String strdate = dateFormatter.format(System.currentTimeMillis());
  System.out.println(strdate);
  return strdate;
 }
 
 
//将带,(\、等特殊字符的字符串转换为集合),以,为例
 //分两种情况,
 //第一种:最后一个字符也是特殊字符。例如:My,Love,Zhu,Zhu,
 //第二种情况:最后一个字符不是特殊字符。例如:My,Love,Zhu,Zhu
  public static List convertStringToArray(String str){
  //判断是哪一种情况,第一种情况为默认为false
  boolean flag = false;
  List list=new ArrayList();
  String lastOne = str.substring(str.length()-1,str.length());
  if(!lastOne.equals(",") && lastOne!=","){
   flag = true;//不是第一种情况
  }
  if(flag){
   String[] hasNone = str.split("\\,");
   for(int i=0;i<hasNone.length;i++){
    list.add(hasNone[i]);
   }
  }else{
   String hasOne = str.substring(0, str.length()-1);
   String[] has= hasOne.split("\\,");
   for(int i=0;i<has.length;i++){
    list.add(has[i]);
   }
  }
  return list;
  }
 

 
//数字类型
  //产生一个随机数,不带种子(以便返回的都是不同的数字)
  public static String autoRandom(){
  int num = 0;
  Random rm = new Random();
  if(rm.nextInt()<0){
   num = 0 - rm.nextInt();
  }else{
   num = rm.nextInt();
  }
  System.out.println(num);
  return new Integer(num).toString();
  }
 
     /**
      * 得到系统唯一20位流水号
      * 方法名:getNewID
      * 参数: 无
      * 返回值:String
      */
   private static int cnt = 0; 
     public synchronized static String getNewID()
     {
         StringBuffer sb = new StringBuffer(20);
         SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
         sb.append(sdf.format(new Date()));
         if (cnt < 10)
         {
             sb.append("00").append(cnt);
         }
         else
             if (cnt < 100)
             {
                 sb.append("0").append(cnt);
             }
             else
                 if (cnt < 1000)
                 {
                     sb.append(cnt);
                 }
        
         cnt++;
         if (cnt > 999)
         {
             cnt = 0;
         }
         System.out.println(sb.toString());
         return sb.toString();
        
       }
 

//数组排序
     //冒泡排序:思想:拿第一个与后一个比较,大于后者就后移一位
     public static int[] mpSort(int[] ints){
      int size = ints.length;
      int num = 0;
      //排序之前先输出
      for(int i=0;i<size;i++){
       System.out.print(ints[i]+",");
      }
      System.out.println("");
      //排序中
      for(int k=size-1;k>0;k--){
       for(int j=0;j<k;j++){
        if(ints[j]>ints[j+1]){//交换位置
         num = ints[j];
         ints[j] = ints[j+1];
         ints[j+1] = num;
        }
       }
      }
      for(int i=0;i<size;i++){
       System.out.print(ints[i]+",");
      }
      System.out.println("");
      //排序之后输出
   return ints;
     }
    
    
   //选择排序:思想:假定第一个为最小的
     public static int[] selectSort(int[]array){  
         for(int out=0;out<array.length-1;out++){  
             int min=out;  
             for(int in=out+1;in<array.length;in++){  
                 if(array[in]<array[min]){  
                     min=in;   //交换位置
                 }  
             }  
             int t =array[out]; //替换数值 
             array[out]=array[min];  
             array[min]=t;  
         }
   return array;  
     } 
    
    
    
    
    
    
 public static void main(String[] args){
  
 }
}

 

0
0
分享到:
评论

相关推荐

    JAVA编程单词汇总

    ### JAVA编程单词汇总 #### 第一章:基础概念与关键字 - **public** ['pʌblik]:在 Java 中,“public”是一个访问修饰符,用于声明类、方法或变量等可以被任何其他代码访问。这有助于实现面向对象编程中的开放...

    java编写的公司员工打卡程序

    Java编写的公司员工打卡程序是一种基于Java编程语言开发的应用,旨在模拟实际工作环境中员工的上下班打卡流程。这个系统对于初学者来说是一个很好的学习项目,因为它涵盖了基础的Java编程概念,如面向对象设计、控制...

    JAVA课程设计算法包共10个

    8. **设计模式**:设计模式是解决常见编程问题的最佳实践,如工厂模式、单例模式、观察者模式等,它们在课程设计中常被用到。 9. **JDBC与数据库交互**:Java通过JDBC API可以连接和操作各种数据库,进行数据的增删...

    java 算法 排序

    在实际开发中,Java 提供了内置的 `Arrays.sort()` 方法,它使用了更高级的 TimSort 算法,结合了冒泡排序、插入排序和归并排序的优点,具有很好的性能。然而,学习和理解基础排序算法对于深入理解数据处理的底层...

    java十大经典案例

    7. **设计模式**:工厂模式、装饰器模式、代理模式、观察者模式等,这些都是软件设计中常用到的模式,能够提高代码的可复用性和可维护性。 8. **网络编程**:Socket通信、HTTP服务器的实现,以及基于TCP/UDP的简单...

    Java图书馆管理系统

    Java图书馆管理系统是一个使用Java编程语言编写的软件应用,主要目的是为了帮助图书馆进行日常运营,如书籍管理、读者服务以及借阅记录跟踪等。这个系统大约包含1500行代码,适合作为学生进行课程设计或者学习Java...

    斗地主JAVA版本

    【斗地主JAVA版本】是一款基于Java编程语言开发的单机版斗地主游戏,它提供了丰富的游戏体验,让玩家可以在计算机上享受经典的斗地主乐趣。Java是一种广泛应用于跨平台软件开发的强大语言,尤其适合于创建桌面应用...

    一些java的小游戏项目,贪吃蛇啥的.zip

    Java是一种广泛使用的面向对象的编程语言,以其跨平台性、高效性和丰富的库而著名。在本项目中,"一些java的小游戏项目,贪吃蛇啥的.zip" 包含了用Java开发的...同时,这也是一个很好的机会去应用和巩固Java编程技能。

    适用于个人的练习的Java项目 Java学习资料项目源码

    这个名为"ys-peral-p-master"的压缩包文件似乎包含了一个Java学习项目,非常适合个人进行实践练习,提升Java编程技能。以下是这个项目可能涵盖的一些关键知识点: 1. **面向对象编程**:Java的核心特性之一就是面向...

    java各公司笔试题集合

    这个压缩包文件“java各公司笔试题集合”显然包含了多个公司在招聘Java程序员时可能会用到的试题,涵盖了基础理论、代码纠错和编程题目等多个方面。下面,我们将深入探讨这些知识点。 一、Java基础知识 这部分试题...

    java算法

    10. **字符串处理**:Java中的字符串操作涉及到模式匹配、KMP算法、Rabin-Karp算法等,这些都是在文本处理和数据分析中常用到的算法。 通过深入学习和实践这些Java算法,开发者可以提升编程能力,解决实际问题,并...

    java实现算法的代码

    在编程领域,Java是一种广泛应用的高级编程语言,尤其在企业级应用和算法实现上具有显著优势。本主题聚焦于“Java实现算法的代码”,旨在探讨如何利用Java来编写和实现各种算法与数据结构。以下是对这个主题的详细...

    这是我用java写的一些小游戏.zip

    在本压缩包“这是我用java写的一些小游戏.zip”中,包含了一个名为“myGame-master”的游戏项目源码,这是使用Java编程语言开发的。这个项目适用于多种用途,如学生的毕业设计、课程设计以及个人技能提升。以下是这...

    数据结构与问题求解(Java语言版)(第4版)-源码

    这些源代码涵盖了数据结构(如图、树、队列、栈)和算法(如排序、搜索、编码解码)的广泛领域,对于提升Java编程和问题解决技能非常有帮助。通过学习和实践这些代码,开发者可以更好地理解和应用计算机科学的基本...

    用Java所写的2048小游戏.zip

    《用Java所写的2048小游戏》是一个基于Java编程语言开发的小型游戏项目,适合学生进行课程设计或毕业设计,同时也是提升编程技能的理想实践。2048游戏是一款简单的数字合成游戏,玩家通过上下左右滑动屏幕,使得棋盘...

    桌球小游戏入门 java.zip

    【标题】"桌球小游戏入门 java.zip"是一个使用Java编程语言开发的游戏项目,主要目标是为初学者提供一个实践平台,适用于毕业设计、课程设计以及个人技能提升。这个压缩包包含了一个名为“boring_java_billiards-...

    Android安卓源码-字母排序类源代码(3例).zip

    - Java语言:Android主要使用Java作为开发语言,因此对Java的基础语法、面向对象编程和异常处理等要有扎实的理解。 - Android SDK:包含了开发Android应用所需的各种库和工具,如Android Studio IDE、构建系统...

    史上最全android开发工具类

    - 工具类通常包含静态方法,用于执行特定任务,如字符串处理、日期格式化、网络请求等。由于它们不持有实例状态,因此在多个地方调用不会引发内存泄漏。 - 常见的工具类包括:`StringUtils`(处理字符串)、`...

    计算机软件-商业源码-电子白板代码(JAVA).zip

    这个项目为开发者提供了一个了解和学习Java编程语言以及相关软件开发实践的宝贵资源。下面我们将深入探讨其中涉及的Java编程知识点、软件开发流程以及可能的技术栈。 首先,Java作为一种广泛使用的面向对象的编程...

    java面试题

    73.6. 项目中用到的Spring中的切面编程最多的地方:声明式事务管理。 77 73.7. spring的事务如何配置 77 73.8. transaction有那几种实现(事务处理)(Spring) 79 73.9. Spring IoC 79 73.10. Spring AOP面向方面编程 ...

Global site tag (gtag.js) - Google Analytics