时区转换问题(简样)

来源:互联网 发布:mac os系统优化 编辑:程序博客网 时间:2024/05/22 09:08
package Lianxi1214;/** * 设计一段程序,使用随机数随机生成一个long类型的值,并获得long类型的值对应的系统时间, * 时间格式为:2016-12-14 12:30:30 ,再分别展示该时间下随机的3个时区的时间,并提示中文名称的时区名 */import java.text.SimpleDateFormat;import java.util.Date;import java.util.Random;import java.util.TimeZone;public class Timeshiqu {    public static void main(String[] args) {        Random ran=new Random();        long lc=System.currentTimeMillis();        Date date=new Date(lc);//获取lc的值对应的系统日期时间        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//日期时间转换为指定格式        String str=sdf.format(date);        System.out.println(str);        String[] sq=TimeZone.getAvailableIDs();//获取系统支持的时区ID;        int a=ran.nextInt(sq.length);        int b=ran.nextInt(sq.length);        int c=ran.nextInt(sq.length);        while(a==b){            b=ran.nextInt(sq.length);        }        while(a==c||b==c){            c=ran.nextInt(sq.length);        }        int[] xb={a,b,c};        for (int i : xb) {            TimeZone zone = TimeZone.getTimeZone(sq[i]);//获取当前ID下的时区;            sdf.setTimeZone(TimeZone.getTimeZone(sq[i]));          //()内最好用Timezone,不要用zone            date = java.util.Calendar.getInstance().getTime();//实例化日历获取当前date类时间;            String sid=sdf.format(date);            System.out.println(sq[i]+"--->"+zone.getDisplayName()+":"+sid);//显示id和对应的中文名称        }    }}
0 0
原创粉丝点击