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
悬赏问题
- ¥15 51单片机使lcd显示器开机闪烁预设字符闪烁3次需要加什么代码
- ¥50 C# 使用DEVMOD设置打印机首选项
- ¥15 麒麟V10 arm安装gdal
- ¥15 想用@vueuse 把项目动态改成深色主题,localStorge里面的vueuse-color-scheme一开始就给我改成了dark,不知道什么原因(相关搜索:背景颜色)
- ¥20 OPENVPN连接问题
- ¥15 flask实现搜索框访问数据库
- ¥15 mrk3399刷完安卓11后投屏调试只能显示一个设备
- ¥100 如何用js写一个游戏云存档
- ¥15 ansys fluent计算闪退
- ¥15 有关wireshark抓包的问题