• 请不要在回答技术问题时复制粘贴 AI 生成的内容
sandman511
V2EX  ›  程序员

轻轻松一刻 在线征方法名:格林尼标准时间转北京时间

  •  
  •   sandman511 · Jan 10, 2020 · 5980 views
    This topic created in 2340 days ago, the information mentioned may be changed or developed.
        public static String 格林尼标准时间转北京时间(String 格林尼标准时间) {
        	...
            ...
            return 北京时间;
        }
    

    请问这个方法名该怎么取 目前 GMT2CMT 但北京时间的简称似乎并不是 CMT
    大家常用方法的方法名喜欢取长一点还是简洁一点
    长一点的方法左右具体明了 但代码臃肿
    简介一点的反之 各有优略 大家喜好如何

    53 replies    2020-01-12 15:52:23 +08:00
    janxin
        1
    janxin  
       Jan 10, 2020
    CST
    itechify
        2
    itechify  
    PRO
       Jan 10, 2020   ❤️ 2
    gmt2bj
    ncwtf
        3
    ncwtf  
       Jan 10, 2020   ❤️ 1
    ```
    public static String glnbzsjZBjsj(String glnbzsj) {
    return bjsj;
    }
    ```
    explore365
        4
    explore365  
       Jan 10, 2020   ❤️ 1
    直接就这个中文就挺好,哈哈哈哈哈哈哈哈哈哈哈
    sandman511
        5
    sandman511  
    OP
       Jan 10, 2020
    @janxin 嗯 是 CST 帖子里笔误了 但是我百度搜 CST 没有北京时间的相关信息
    @explore365 我想用中文变量名 or 方法名很久了!!!!!!!!!
    sprite82
        6
    sprite82  
       Jan 10, 2020   ❤️ 1
    GMT2BeijingTime
    psychoo
        7
    psychoo  
       Jan 10, 2020   ❤️ 1
    “爱你没差,那一点时差”
    ——《爱你没差》周杰伦

    jay_anmc(string ...)
    LiYanHong
        8
    LiYanHong  
       Jan 10, 2020   ❤️ 1
    GMT2UTC8
    sockpuppet9527
        9
    sockpuppet9527  
       Jan 10, 2020
    public static String CST(String time ){
    return GMT(time,8);
    }

    public static String GMT(String time , int diff) {
    ...
    return time;
    }
    xfspace
        12
    xfspace  
       Jan 10, 2020 via Android
    @sandman511 China Standard Time 国际称 CST Asia
    CST 欧州中部时间
    atwoodSoInterest
        13
    atwoodSoInterest  
       Jan 10, 2020
    如果接手别人的代码,你希望是一长串看起来难受但是读得懂的,还是几个莫名其妙的缩写。当然是读得懂最重要啊。
    按照比较通用的命名方式来命名就已经是个靠谱好青年了,长度长一点完全是可以接受的,毕竟言简意赅是绝顶高手才能办到的。
    可读性 > 性能
    iamverylovely
        14
    iamverylovely  
       Jan 10, 2020 via Android
    gmt2cn
    300
        15
    300  
       Jan 10, 2020 via Android
    我也来一个,上午、中午、下午这个变量应该叫啥。。
    sandman511
        16
    sandman511  
    OP
       Jan 10, 2020
    @GuryYu
    @pinepara
    @xfspace

    CST (北美中部标准时间) 是 UTC-6 时区的知名名称之一,比 UTC (协调世界时)落后 6 个小时与 UTC 的时间偏差可写为-06:00.
    取 CST 的话比较容易误解吧 所以想找找有无更好的名称
    pinepara
        17
    pinepara  
       Jan 10, 2020
    @sandman511
    是否使用缩写取决于作用域和使用场景。
    如果场景里确实有可能同时涉及到 Central Standard Time 和 China Standard Time,甚至 Cuba Standard Time,那就避免使用缩写,直接用全称 China Standard Time。
    或者如果这是一个可能被广泛使用的功能库,也要尽量避免使用缩写。

    反之如果只是一个中国网站 /App 的代码里的一个类的私有函数,完全可以简写为 CST。
    krixaar
        18
    krixaar  
       Jan 10, 2020
    String utc_plus_8(String utc_timestamp)
    exiledkingcc
        19
    exiledkingcc  
       Jan 10, 2020   ❤️ 3
    正确做法是:toLocalTime(UTCTime utc, TimeZone tz)
    如果一定要北京时间的话,重载一个 toBeijingLocaltime(UTCTime )
    其它的都是垃圾。
    ormand1bd
        20
    ormand1bd  
       Jan 10, 2020
    GmtToLocal(xxx)
    luckyrayyy
        21
    luckyrayyy  
       Jan 10, 2020
    toBeijingTime(String GMT)
    AS4694lAS4808
        22
    AS4694lAS4808  
       Jan 10, 2020
    public String gelinnizhibiaozhuntimezhuanbeijingtime(String gelinnizhitime){}
    marcong95
        23
    marcong95  
       Jan 10, 2020
    正确做法自然是选用某一种自带时区的数据结构 toLocaleString()

    不过一定是不带时区的两个输入输出,而且不考虑本机区域设置的话,似乎 gmtToBeijingTime 比较简单准确?
    Kirscheis
        24
    Kirscheis  
       Jan 10, 2020 via Android   ❤️ 1
    1. 程序内部尽量不要使用 string 表示 time,如果输入输出必须是 string,parse 和 format 过程要分开

    2. 如非必要,别造轮子。。

    ZonedDateTime beijingTime = timestamp.atZone(ZoneId.of("Asia/Shanghai"));
    cigarzh
        25
    cigarzh  
       Jan 10, 2020
    privil
        26
    privil  
       Jan 10, 2020
    因为重名的原因,基本配置服务器都用 HKT,也是以前看文章学的。
    wr410
        27
    wr410  
       Jan 10, 2020
    GMT+8
    GMT2CST
    silenceeeee
        28
    silenceeeee  
       Jan 10, 2020
    gmt2bj
    laoyur
        29
    laoyur  
       Jan 10, 2020
    只有 格林尼治 或 格林威治
    [格林尼] 是什么鬼👻
    lithiums
        30
    lithiums  
       Jan 10, 2020
    um... 不是有一个 UTC +8. 中国标准时间 ( CST )么
    xenme
        31
    xenme  
       Jan 10, 2020 via iPhone
    你自己都写出来了,中文不好么?逃...
    格林尼标准时间转北京时间()
    dswyzx
        32
    dswyzx  
       Jan 10, 2020
    @winterbells #15 morning,noon,afternoon 不行么.

    另题主问题:反正都是从 UTC 时区转换,建议 UTCZeroToUTCEastEight
    可扩展总 24 时区随便转问题呢
    libook
        33
    libook  
       Jan 10, 2020
    gmtToBeijingTime

    或者通用一些的 Stirng convertTimeZone(String fromTime, int fromZone, int toZone)
    300
        34
    300  
       Jan 10, 2020 via Android
    @dswyzx 一个变量名表示这几个值🙄
    我取 period。。。
    c6h6benzene
        35
    c6h6benzene  
       Jan 10, 2020 via iPhone
    为什么我现在一看到征名帖就想到了 FuYouKeJi ()
    pmispig
        36
    pmispig  
       Jan 10, 2020
    utcToLocaltime 这个不是很简单么。。
    jinliming2
        37
    jinliming2  
       Jan 10, 2020 via iPhone
    正时区,GMT2GMT08
    负时区,GMT2GMT_08
    november
        38
    november  
       Jan 10, 2020
    g2b
    G2B
    GtoB
    davidliu645
        39
    davidliu645  
       Jan 10, 2020
    GreenwichMeanTimeToBeijingTime()
    Biscuits
        40
    Biscuits  
       Jan 10, 2020
    简介明了的,这个明明可以的。
    不行你加注释呗。
    alex0721
        41
    alex0721  
       Jan 10, 2020
    trans_utc_2_bj
    Cbdy
        42
    Cbdy  
       Jan 10, 2020 via Android
    tz2t8
    20150517
        43
    20150517  
       Jan 10, 2020
    GMT 不是 UTC 吧,确定你要用 GMT?
    CloudnuY
        44
    CloudnuY  
       Jan 10, 2020
    居然没有“富有转换器”
    ZXCDFGTYU
        45
    ZXCDFGTYU  
       Jan 10, 2020
    献丑了...
    getBeiJingTimeStringByUTCTimeString($utcTime){}
    hantsy
        46
    hantsy  
       Jan 10, 2020
    为什么要转???

    用 Java 8 中的 DateTime API。ZonedDatetime 支持时区,切换一下时区,打印出来就行了。
    metamask
        47
    metamask  
       Jan 11, 2020
    python

    def covert_gmt_to_local_time(timezone, now=None)


    函数直接写死的话,假如遇到上海,又得写一个,遇到广州又得写一个;
    metamask
        48
    metamask  
       Jan 11, 2020
    @freakxx #47

    错别字:
    convert_gmt_to_local_time

    covert -> convert
    chinvo
        49
    chinvo  
       Jan 11, 2020 via iPhone
    toPekTime ( IATA 码
    larsenlouis
        50
    larsenlouis  
       Jan 11, 2020
    像 v 站的页脚一样,用当地机场代码 TC2PEK
    Lonersun
        51
    Lonersun  
       Jan 11, 2020
    utc2prc
    paouke
        52
    paouke  
       Jan 11, 2020
    toP8
    luozic
        53
    luozic  
       Jan 12, 2020 via iPhone
    接口的方式定义,最后实现接口是北京时间。 除非就是时钟应用,否则推荐 jodatime or jdk8 之后自带的时间
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2679 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 125ms · UTC 10:34 · PVG 18:34 · LAX 03:34 · JFK 06:34
    ♥ Do have faith in what you're doing.