用方法把一串数字的千分位显示出来,让从最低位开始,每三位有一个逗号来表示千分位
3条回答 默认 最新
micthis 2023-10-31 17:08关注public class Test { public static void main(String []args) { String[] arr={"1","12","123","1234","12345","123456","1234567", "1.1","12.12","123.123","1234.1234","12345.12345","123456.123456","1234567.1234567"}; for(String s : arr) System.out.println(convt(s,",")); } static String convt(String s,String sep) { if(s.length()==0) return s; StringBuilder sb=new StringBuilder(); int dot=s.indexOf("."),n,len; if(dot==-1) { n=s.length()/3; len=s.length()%3; } else { n=dot/3; len=dot%3; } if(len==0) { n--; len=3; } sb.append(s.substring(0,len)); while(n>0) { sb.append(sep); sb.append(s.substring(len,len+3)); len+=3; n-=1; } if(dot!=-1) sb.append(s.substring(dot)); return sb.toString(); } }解决 无用评论 打赏 举报 编辑记录