代码:

package fixsizestring;

public class TestClass {
    public static void main(String[] args) {
        for(int i=0;i<10;i++) {
            System.out.println(fixSizeStr("#"+i,10)+fixSizeStr("abcdefg",10)+fixSizeStr("北32京32",10)+fixSizeStr("广202州",10)+fixSizeStr(null,10));
            System.out.println(fixSizeStr2("."+i,10)+fixSizeStr2("abcdefg",10)+fixSizeStr2("北32京32",10)+fixSizeStr2("福322州",10)+fixSizeStr2(null,10));
        }
    }

    // 得到一定长度的字符串,不足补空格
    private static String fixSizeStr(Object obj, int size) {
        String str;
        if(obj==null) {
            str="null";
        }else {
            str=obj.toString();
        }

        int strLen;
        if (obj == null) {
            strLen = 0;
        }else{
            strLen= str.length();
        }

        if (strLen == size) {
            return str;
        } else if (strLen < size) {
            int temp = size - strLen;
            String tem = "";
            for (int i = 0; i < temp; i++) {
                tem = tem + " ";
            }
            return str + tem;
        }else{
            return str.substring(0,size);
        }
    }

    // 得到一定长度的字符串,不足补空格
    private static String fixSizeStr2(Object obj, int size) {
        String str;
        if(obj==null) {
            str="null";
        }else {
            str=obj.toString();
        }
        return String.format("%-"+size+"s", str);
    }
}

输出:

#0        abcdefg   北32京32    广202州     null
.0        abcdefg   北32京32    福322州     null
#1        abcdefg   北32京32    广202州     null
.1        abcdefg   北32京32    福322州     null
#2        abcdefg   北32京32    广202州     null
.2        abcdefg   北32京32    福322州     null
#3        abcdefg   北32京32    广202州     null
.3        abcdefg   北32京32    福322州     null
#4        abcdefg   北32京32    广202州     null
.4        abcdefg   北32京32    福322州     null
#5        abcdefg   北32京32    广202州     null
.5        abcdefg   北32京32    福322州     null
#6        abcdefg   北32京32    广202州     null
.6        abcdefg   北32京32    福322州     null
#7        abcdefg   北32京32    广202州     null
.7        abcdefg   北32京32    福322州     null
#8        abcdefg   北32京32    广202州     null
.8        abcdefg   北32京32    福322州     null
#9        abcdefg   北32京32    广202州     null
.9        abcdefg   北32京32    福322州     null      

--END-- 2019-12-06 13:59

[String]两个右补空格使字符串达到固定长度的函数 来自网上 请君自取的更多相关文章

  1. GBK格式字符串右补空格

    public class Test2 {   public static void main(String[] s) throws IOException {   List<User> l ...

  2. c# 超长字符串截取固定长度后显示...(超长后面显示点点点) 通用方法

    通用方法: 此方法是采用unicode编码方式,一个汉字为2个字节,一个数字or字母是1个字节,此方法传入的第二个长度参数是unicode长度. 所以不用考虑截取的字符串是汉字还是英文字母的问题,参数 ...

  3. 算法进阶面试题01——KMP算法详解、输出含两次原子串的最短串、判断T1是否包含T2子树、Manacher算法详解、使字符串成为最短回文串

    1.KMP算法详解与应用 子序列:可以连续可以不连续. 子数组/串:要连续 暴力方法:逐个位置比对. KMP:让前面的,指导后面. 概念建设: d的最长前缀与最长后缀的匹配长度为3.(前缀不能到最后一 ...

  4. Oracle 给字符串补空格、补0

    利用lpad().RPAD()函数来实现给字符串补空格或补0的功能: 一.lpad()lpad函数将左边的字符串填充一些特定的字符其语法格式如下:lpad(string,n,[pad_string]) ...

  5. C++中int转为char 以及int 转为string和string 转int和空格分隔字符串

    1.对于int 转为char 直接上代码: 正确做法: void toChar(int b) { char u; ]; _itoa( b, buffer, ); //正确解法一 u = buffer[ ...

  6. String的trim()用于去掉字符串前后的空格

    String的trim()可以去掉字符串的前导和后继字符串,即去掉字符串前面和后面的空格. eg:String userName = " good man "; System.ou ...

  7. PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法

    一.数字补0. 如果要自动生成学号,自动生成某某编号,就像这样的形式“d0000009”.“d0000027”时,那么就会面临一个问题,怎么把左边用0补齐成这样8位数的编码呢?我想到了两种方法实现这个 ...

  8. java中int转成String位数不足前面补零

    java中int转成String位数不足前面补零 转载自:http://ych0108.iteye.com/blog/2174134 java中int转String位数不够前面补零 String.fo ...

  9. Java String类相关知识梳理(含字符串常量池(String Pool)知识)

    目录 1. String类是什么 1.1 定义 1.2 类结构 1.3 所在的包 2. String类的底层数据结构 3. 关于 intern() 方法(重点) 3.1 作用 3.2 字符串常量池(S ...

随机推荐

  1. pycharm社区版对于django项目的创建

    学习django的基础的东西:python基础(虽然自己看了一遍,不过还有好多东西都是一知半解的,所以还要重复看,去加强自己的基础). 数据库SQL(自己也是对一些基础语句运用的不熟练,然后接下来的主 ...

  2. Elasticsearch 术语介绍和CRUD实际操作入门

    一.Elastic Stack 核心Elasticsearch Elasticsearch 是一个分布式.RESTful 风格的搜索和数据分析引擎.Elasticsearch 是面向文档的,这就意味着 ...

  3. CV2识别图片A,B,C,D

    这个模型是经过简单训练,只能识别四个英文字母:ABCD,是我为了提取答案才训练的,因为科大,百度,以及腾讯的识别不是很准,所以自己训练自己使用,希望能够给你带来方便.下面是训练好的model,如多你感 ...

  4. 走迷宫(bfs, 最短路)

    Input 10 10 #S######.# ......#..# .#.##.##.# .#........ ##.##.#### ....#....# .#######.# ....#..... ...

  5. DevExpress GridControl 使用瀑布加载方式加载数据

    从事winform开发已经快三年了,这三年中两年使用DevExpress控件进行winform系统开发,对Dev控件有自己的一些思考,下面就常用的表格控件GridControl的分页进行一些讨论. 在 ...

  6. 清除PLSQL Developer访问数据库连接的历史记录

    1.C盘下 路径: C:\Users\JourneyOfFlower\AppData\Roaming\PLSQL Developer 12\Preferences\JourneyOfFlower\ J ...

  7. 苹果cms和海洋cms通用的百度主动推送工具

    百度主动推送的代码,不需要每天手动去添加地址推送,只要浏览器打开推送请求,不要关掉浏览器,程序自动帮你推送.(该插件只推送内容页,支持动态.伪静态.静态页面的推送,但这三种地址规则需要去代码里面自行拼 ...

  8. python_并发编程——多进程的第二种启动方式

    1.多进程的第二种启动方式 import os from multiprocessing import Process # 创建一个自定义类,继承Process类 class MyProcess(Pr ...

  9. 使用Mybatis

    Pom.xml:项目对象模型,主要描述了项目---包括配置文件,开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url,项目的依赖性以及其它与项目相关的因素.

  10. 七.Protobuf3 嵌套类型

    Protobuf3 嵌套类型 您可以在其他消息类型中定义和使用消息类型,如下例所示:这里Result消息是在SearchResponse消息中定义的: message SearchResponse { ...