2

我熟悉串联,这是一个足够简单的概念。我正在尝试使用一个简单的子字符串方法来右对齐几个数字。这是我所拥有的,希望能更好地解释它:

String a1 = "    " + "" + a;
String e1 = "    " + "" + e;
String i1 = "    " + "" + i;
String o1 = "    " + "" + o;
String u1 = "    " + "" + u;

System.out.println ("The file contained:");
System.out.println ("A: " +  a1.substring(4));
System.out.println ("E: " +  e1.substring(4));
System.out.println ("I: " +  i1.substring(4));
System.out.println ("O: " +  o1.substring(4));
System.out.println ("U: " +  u1.substring(4));

我省略了其余的代码,因为它与我的问题无关(并且工作正常)。

我希望这样做是将 a、e、i、o 和 u 与 4 个“空格”连接起来。当我运行程序时,在 a、e、i、o 或 u 之前没有任何空格的迹象。

任何帮助或输入表示赞赏,谢谢。

编辑*:我应该澄清一下。我想要字符串的最后 4 个字符,因此是 a1.substring(4);。

编辑2:我是个白痴。这对我来说是一个非常简单的忽视。使用子字符串右对齐的正确代码:

     String a1 = "    " + a;
     String e1 = "    " + e;
     String i1 = "    " + i;
     String o1 = "    " + o;
     String u1 = "    " + u;
  System.out.println ("The file contained:");
  System.out.println ("A: " +  a1.substring(a1.length() - 4));
  System.out.println ("E: " +  e1.substring(e1.length() - 4));
  System.out.println ("I: " +  i1.substring(i1.length() - 4));
  System.out.println ("O: " +  o1.substring(o1.length() - 4));
  System.out.println ("U: " +  u1.substring(u1.length() - 4));
4

3 回答 3

5

如果你想做的只是整数右对齐,你可以这样做printf

int a = 10;
int b = 100;
System.out.printf("A:%20d\n", a);
System.out.printf("B:%20d\n", b);

输出:

A:                  10
B:                 100

在有问题的编辑后编辑。

要获取字符串的最后四个字符,请执行

s.substring(s.length()-4)
于 2013-03-05T23:19:28.813 回答
3

如果您需要使用空格,您可以执行以下操作:

String a1 = "    " + a;
String e1 = "    " + e;
String i1 = "    " + i;
String o1 = "    " + o;
String u1 = "    " + u;

System.out.println ("The file contained:");
System.out.println ("A: " +  a1);
System.out.println ("E: " +  e1);
System.out.println ("I: " +  i1);
System.out.println ("O: " +  o1);
System.out.println ("U: " +  u1);
于 2013-03-05T23:18:50.620 回答
1

尝试

String a1 = "    " + "" + a;
String e1 = "    " + "" + e;
String i1 = "    " + "" + i;
String o1 = "    " + "" + o;
String u1 = "    " + "" + u;

System.out.println ("The file contained:");
System.out.println ("A: " +  a1.substring(0, 4));
System.out.println ("E: " +  e1.substring(0, 4));
System.out.println ("I: " +  i1.substring(0, 4));
System.out.println ("O: " +  o1.substring(0, 4));
System.out.println ("U: " +  u1.substring(0, 4));

substring(4) 精确打印字符串的第 4 个索引 substring(0,4) 从索引 0 打印到第 4 个。

于 2013-03-05T23:16:35.217 回答