JAVA

来源:互联网 发布:java按字符读取文件 编辑:程序博客网 时间:2024/06/03 04:53

日期计算:

public class Main {public static void main(String[] args){String s1="1970 1 1";String s2="1970 1 3";//计算日期时间差值,调用函数参数类型不一样*/System.out.println("第一种方法转换为:"+Between_day(s1,s2));/*SimpleDateFormat format = new SimpleDateFormat("yyyy MM dd * hh:mm:ss");/*设置日期格式*/ * Date d1=format.parse(s1);* Date d2=format.parse(s2); * System.out.println("第二种方法转换为:"+between_day(d1,d2));*///****计算某个时间增加减少(添加负号即可)天数之后的日期**********/addday();}//方法1字符串传递参数/*传递两个字符串变量private static int Between_day(String smdate,String bdate){SimpleDateFormat sdf=new SimpleDateFormat("yyyy MM dd");Calendar cal= Calendar.getInstance();/*应该是获得系统原始时间,1970……,作为参考,然后可以比较给出的两个时间的差值*/cal.setTime(sdf.parse(smdate));/*直接类型转换为SinpledateFormat*/long time1=cal.getTimeInMillis();/*获得第一个日期的毫秒级时间*/cal.setTime(sdf.parse(bdate));long time2=cal.getTimeInMillis();/*获得第一个日期的毫秒级时间*/long bet_days=(time2-time1)/(1000*3600*24);/*相减获得时间差值,转化为天数*/return Integer.parseInt(String.valueOf(bet_days));/*转化为字符串,返回数值*/}//方法二private static int between_day(Date smdate,Date bdate) throws ParseException{SimpleDateFormat sdf=new SimpleDateFormat("yyyy MM dd");Calendar cal=Calendar.getInstance();//如果参数就是字符串,一下两步骤省略着一步转换sdf.format(smdate)smdate=sdf.parse(sdf.format(smdate));/*,先转化为String,格式化之后,之后在将String对象转换为日期,其他一样*/bdate=sdf.parse(sdf.format(bdate));cal.setTime(smdate);long time1=cal.getTimeInMillis();cal.setTime(bdate);long time2=cal.getTimeInMillis();long bet_day=(time2-time1)/(3600*1000*24);return Integer.parseInt(String.valueOf(bet_day)); }//增加天数private static void addday(){Date d= new Date();//获得当前时间SimpleDateFormat format = new SimpleDateFormat("yyyy MM dd hh:mm:ss");/*设置日期格式*/ Calendar cal= Calendar.getInstance();String date = format.format(d);//将simpleDateFormat格式转换为字符串“当前类型.format”System.out.println("现在的日期是:" + date);/****也可以自己输入时间添加时间****/String s1=”2015 05 2”;d=format.parse(s1);cal.setTime(d);/增加这段代码即*不添加直接获得当前系统时间/cal.add(Calendar.DATE, 30);// .DATA 增加天 30为增加的天数,可以改变的//.MONTH 增加月//.YEAR 增加年d = cal.getTime();String backTime = format.format(d);//重新转化为字符串即可System.out.println("增加天数以后的日期:" + backTime);}}

大数计算:

mport java.util.*;import java.math.*;//相当于头文件public class Main{// 程序提交时候的命名规则,必须Mainpublic static void main(String[] args){Scanner cin=new Scanner(System.in);BigDecimal a=new BigDecimal(0);//定义变量,初始化,带小数点的大数BigDecimal b=new BigDecimal(0);BigDecimal c,c1,c2,c3,c4,c5;while(cin.hasNext()){//相当于eof a=cin.nextBigDecimal(); b=cin.nextBigDecimal(); c=a.add(b);//a+bc1=a.substract(b);//a-bc2=a.multiply(b);//a*bc3=a.pow(b);//a的b次幂c4=a.remainder(b);//a%b/* if(s.equals(“bye”))//判断字符串是否相等*/if(b.compareTo(BigDecimal.ZERO)!=0)//判断除数是否为零c3=a.divide(b,2,4);//表示a/b,保留两位小数,四舍五入,(>4,入)if(c.compareTo(BigDecimal.ZERO)==0){//保证不会输出0.0//-1,0,1分别表示大于、等于、小于System.out.println("0");}else{System.out.println(result.stripTrailingZeros().toPlainString());}}}}


0 0
原创粉丝点击