m0_64938673 2022-05-10 21:29 采纳率: 75%
浏览 64
已结题

java这几个字符串是怎么靠右对齐?

java这几个字符串是怎么靠右对齐?怎么对齐不了?是怎么办?

  • 写回答

2条回答 默认 最新

  • EdsionWang 2022-05-10 23:47
    关注

    因为有中文,占位符和字符串长度是不一致的。如果你都是英文字母和字符的话,这样写格式化输出没问题。中文的话,你可以先计算出GBK编码后的长度,然后再添加前导空格来对齐。

    import java.io.UnsupportedEncodingException;
    
    public class HelloWorld {
        public static void main(String []args) {
            try
            {
    String name1 = "海飞丝洗发水|";
    name1 = new String("                     ").substring(0,20 - name1.getBytes("GBK").length)+name1;
    String name2 = "飘柔洗发水|";
    name2=new String("                     ").substring(0,20 - name2.getBytes("GBK").length)+name2;
    String name3 = "洗发水|";
    name3=new String("                     ").substring(0,20 -name3.getBytes("GBK").length)+name3;
           System.out.println(name1);
            System.out.println(name2);
            System.out.println(name3);
            }
            catch(UnsupportedEncodingException e) {
                
                System.out.println(e); 
                
            }
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月19日
  • 已采纳回答 5月11日
  • 修改了问题 5月11日
  • 创建了问题 5月10日