java中String.format()的使用

本文详细介绍了Java中String.format()方法的时间格式化功能及其使用技巧,包括如何将时间格式化为Unix时间戳,并展示了多种格式化选项的具体用法。

       最近的工作重点在搞HOTP算法,其实对时间的格式化中有一行String fmtTime = String.format("%1$-11s", testTime[i]);这样的代码,查API没太搞清楚是怎么回事,后来经搜索资料查出其使用方法。

        String.format()就是格式化的意思,将各类数据格式化为字符串输出,上段的那句代码的意思是将时间格式化为unix时间,即(UTC) 1970 年 1 月 1 日 00:00:00 至现在所经过的秒数。

 

         列下format使用的方法:

 

 1.对整数进行格式化:%[index$][标识][最小宽度]转换方式
 

       格式化字符串由4部分组成,特殊的格式通通以%index$开头,index从1开始取值,表示将第index个参数拿进来进行格式化,[最小宽度]的含义,就是最终该整数转化的字符串最少包含多少位数字。剩下2个部分的含义
 
  标识:
 
  '-' 在最小宽度内左对齐,不可以与“用0填充”同时使用
 
  '#' 只适用于8进制和16进制,8进制时在结果前面增加一个0,16进制时在结果前面增加0x
 
  '+' 结果总是包括一个符号(一般情况下只适用于10进制,若对象为BigInteger才可以用于8进制和16进制)
 
  '0' 结果将用零来填充
 
  ',' 只适用于10进制,每3位数字之间用“,”分隔
 
  '(' 若参数是负数,则结果中不添加负号而是用圆括号把数字括起来(同‘+’具有同样的限制)

 

      下边是例子:

       System.out.println(String.format("%1$,09d", -33123));
     
       System.out.println(String.format("%1$-9d", -66));
     
       System.out.println(String.format("%1$(9d", -6));
     
       System.out.println(String.format("%1$#9x", 1111));
       结果分别是:-0033,123

内容概要:该论文提出了一种结合格子玻尔兹曼方法(LBM)和离散元方法(DEM)的耦合方法,用于模拟流体相与不规则形状固体颗粒之间的相互作用。研究使用重叠球体的多球体模型表示真实颗粒几何形状,通过开源代码 LIGGGHTS 和 Palabos 实现耦合模拟。作者通过多个基准案例验证了方法的准确性,并模拟了水下球形和不规则形状颗粒的坍塌和输运过程,突出了颗粒形态对固液相互作用的影响。相比以往高度理想化的非球形颗粒模拟,该方法提供了更真实的计算框架,可用于研究颗粒形状对岩土工程问题(如内部侵蚀)的影响。文中还提供了基于Python的简化实现框架,包括DEM_Particle类、LBM_Fluid类以及耦合过程的主模拟循环,并详细解释了各部分的功能和实现逻辑。适合人群:具备一定编程基础,对流体力学和颗粒动力学有兴趣的研究人员和工程师。使用场景及目标:①研究流体与不规则形状颗粒之间的相互作用机制;②模拟岩土工程中的内部侵蚀现象;③验证LBM-DEM耦合方法的准确性和适用性;④开发更高效的数值模拟工具用于实际工程问题。其他说明:此资源不仅提供了详细的代码实现,还包括了对LBM和DEM基本原理的介绍,以及对耦合方法中涉及的关键技术和实现细节的深入解析。在学习过程中,建议结合实际案例进行代码调试和参数校准,以加深对方法的理解和掌握。此外,对于实际科研应用,建议使用Palabos和LIGGGHTS的耦合接口,并考虑使用MPI进行并行计算加速。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值