Java中实现String.padLeft和String.padRight的示例
时间:2019-04-06
本文章向大家介绍Java中实现String.padLeft和String.padRight的示例,主要包括Java中实现String.padLeft和String.padRight的示例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
因为习惯了C#中的padLeft和padRight,接触Java后突然失去这两个功能,觉得别扭,就试着实现了这两个方法。
Java中String.format()中带有字符串对齐功能如下:
System.out.println(String.format("*%1$-10s*", "moon")); System.out.println(String.format("*%1$10s*", "moon"));
输出:
以上方法经过简单的变换可以得到:
public static String padWhitespaceLeft(String s, int len) { return String.format("%1$" + len + "s", s); } public static String padWhitespaceRight(String s, int len) { return String.format("%1$-" + len + "s", s); }
调用下面方法:
System.out.println("*" + padWhitespaceLeft("moon", 12) + "*"); System.out.println("*" + padWhitespaceRight("moon", 12) + "*");
可以得到结果:
以上只是介绍左右对齐时,补空白符的方法,但是在实际开发过程中,单纯的补空白符也许满足不了开发要求,为此我还要做一次强化改进:
/** * @作者 尧 * @功能 String左对齐 */ public static String padLeft(String src, int len, char ch) { int diff = len - src.length(); if (diff <= 0) { return src; } char[] charr = new char[len]; System.arraycopy(src.toCharArray(), 0, charr, 0, src.length()); for (int i = src.length(); i < len; i++) { charr[i] = ch; } return new String(charr); } /** * @作者 尧 * @功能 String右对齐 */ public static String padRight(String src, int len, char ch) { int diff = len - src.length(); if (diff <= 0) { return src; } char[] charr = new char[len]; System.arraycopy(src.toCharArray(), 0, charr, diff, src.length()); for (int i = 0; i < diff; i++) { charr[i] = ch; } return new String(charr); }
调用方法如下:
System.out.println("*" + padLeft("moon", 12, '-') + "*"); System.out.println("*" + padRight("moon", 12, '-') + "*");
输出结果:
这样在Java中处理字符串对齐就可以像C#那样简单了。
效率也是有保障的。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- zepto 基础知识(4)
- Intro.js:网站功能操作分布引导插件(附中文独家使用教程)
- [C#1] 6-方法
- 如何删除WordPress 的“多站点”模式(multisite)?
- 部分Sonos及Bose扬声器爆安全漏洞,被黑客入侵后发出特定音频
- TCP - WAIT状态及其对繁忙的服务器的影响
- 在Windows 7/Server 2008 R2上部署asp.net 1.1程序
- CSS Auto Reload:解放F5 键,自动刷新浏览器的前端利器(Chrome 扩展)
- zepto 基础知识(3)
- 1.[Andriod]之Andriod布局 VS WinPhone布局
- WordPress自定义url 中的“author” 别名
- ASP.NET 4 AppFabric 输出缓存提供程序
- WordPress 中禁止编辑“已发布”的文章
- Windows Server 2008 R2 网络负载平衡 (NLB)资料汇总
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 对python的bytes类型数据split分割切片方法
- PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
- python 实现数字字符串左侧补零的方法
- tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析
- laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
- 使用Python实现微信提醒备忘录功能
- 对web.py设置favicon.ico的方法详解
- PHP pthreads v3下同步处理synchronized用法示例
- 浅谈pycharm的xmx和xms设置方法
- PHP pthreads v3下worker和pool的使用方法示例
- 浅谈python脚本设置运行参数的方法
- laravel框架实现敏感词汇过滤功能示例
- python 接收处理外带的参数方法
- Django框架实现的简单分页功能示例
- php测试kafka项目示例