您的位置:

java里面控制格式输出,java里面控制格式输出什么意思

本文目录一览:

java输出格式控制的问题

package domain;

import java.io.UnsupportedEncodingException;

import java.util.ArrayList;

import java.util.List;

public class Test1 {

public Test1() {

ListStudents stuList = new ArrayListStudents();

Students students = new Students();

students.setShowname("姓名");

students.setShownumber("学号");

students.setShowsex("性别");

students.setShowcollege("学院");

students.setShowbirthday("生日");

stuList.add(students);

students = new Students();

students.setShowname("fangfang");

students.setShownumber("2008020308");

students.setShowsex("female");

students.setShowcollege("小北");

students.setShowbirthday("2008-08-08");

stuList.add(students);

ListInteger cellLength = doGetCellWidth(stuList);

doPrintInfo(cellLength, stuList);

}

private ListInteger doGetCellWidth(ListStudents stuList) {

//列长度

int nameLong = 0;

ListInteger cellLength = new ArrayListInteger();

for (int i = 0; i 5; i++) {

nameLong = 0;

for (Students students : stuList) {

switch (i) {

case 0:

if (students.getShowname().length() nameLong) {

nameLong = students.getShowname().length();

}

break;

case 1:

if (students.getShownumber().length() nameLong) {

nameLong = students.getShownumber().length();

}

break;

case 2:

if (students.getShowsex().length() nameLong) {

nameLong = students.getShowsex().length();

}

break;

case 3:

if (students.getShowcollege().length() nameLong) {

nameLong = students.getShowcollege().length();

}

break;

case 4:

if (students.getShowbirthday().length() nameLong) {

nameLong = students.getShowbirthday().length();

}

break;

default:

break;

}

}

//列最长长度间隔2

cellLength.add(nameLong+2);

}

return cellLength;

}

private void doPrintInfo(ListInteger cellLength, ListStudents stuList) {

for (Students stu : stuList) {

doPrint(cellLength.get(0), stu.getShowname(), false);

doPrint(cellLength.get(1), stu.getShownumber(), false);

doPrint(cellLength.get(2), stu.getShowsex(), false);

doPrint(cellLength.get(3), stu.getShowcollege(), false);

doPrint(cellLength.get(4), stu.getShowbirthday(), true);

}

}

private void doPrint(int width, String name, boolean nextRow) {

String str = "";

try {

name = new String(name.getBytes("gbk"), "iso-8859-1");

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

int nameLength = width - name.length();

if (nameLength 0) {

for (int i = 0; i nameLength; i++) {

str += "#";

}

}

try {

if (nextRow) {

System.out.println(new String(name.getBytes("iso-8859-1"), "gbk")+str.replace("#", " "));

} else {

System.out.print(new String(name.getBytes("iso-8859-1"), "gbk")+str.replace("#", " "));

}

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

new Test1();

}

}

最后说明一下,java后台输出的话,汉字后面的空格会变短。

Java中如何控制右对齐输出?

Java中控制右对齐输出的方法有以下:

1、你可以把数字转换成字符串,用 String.format("% 4d", number1); 可以补充空格。有个更好的方法用printf();这个给C中的方法差不多,很方便例如这样:System.out.printf("%-10s","abc"); //输出10列,左对齐(-号表示左对齐);System.out.printf("%8d",23); //输出8列, 右对齐。

2、你可以把数字转换成字符串,用 String.format("% 4d", number1); 可以补充空格,这样行

有个更好的方法用printf();这个给C中的方法差不多,很方便例如这样:System.out.printf("%-10s","abc");System.out.printf("%8d",23);System.out.println();System.out.printf("%-10s","ab");System.out.printf("%8d",23); 就可以了,这只是个例子,具体情况怎么实现看你自己。

java如何控制数据的输出格式。

使用 System.out.printf(); 方法控制数据的输出格式

如:

double number = 234.234 ;

System.out.printf(“%6.2f” , number);

程序运行结果 : 234.23

java怎么格式化输出数字

使用System.out.printf(格式化字符串,参数)

int a = 5;

数字的话System.out.printf("%d",a);

//"%"表示进行格式化输出,"%"之后的内容为格式的定义。

System.out.printf("%f",d);//"f"表示格式化输出浮点数。

System.out.println();

System.out.printf("%9.2f",d);//"9.2"中的9表示输出的长度,2表示小数点后的位数。

System.out.println();

System.out.printf("%+9.2f",d);//"+"表示输出的数带正负号。

System.out.println();

System.out.printf("%-9.4f",d);//"-"表示输出的数左对齐(默认为右对齐)。

System.out.println();

System.out.printf("%+-9.3f",d);//"+-"表示输出的数带正负号且左对齐。

System.out.println();

System.out.printf("%d",i);//"d"表示输出十进制整数。

System.out.println();

System.out.printf("%o",i);//"o"表示输出八进制整数。

System.out.println();

System.out.printf("%x",i);//"d"表示输出十六进制整数。

System.out.println();

System.out.printf("%#x",i);//"d"表示输出带有十六进制标志的整数。

System.out.println();

System.out.printf("%s",s);//"d"表示输出字符串。

System.out.println();

System.out.printf("输出一个浮点数:%f,一个整数:%d,一个字符串:%s",d,i,s);

//可以输出多个变量,注意顺序。

System.out.println();

System.out.printf("字符串:%2$s,%1$d的十六进制数:%1$#x",i,s);

//"X$"表示第几个变量。

Java编程,请问怎么控制浮点数输出格式,好像没办法在输出里直接写

先将浮点数转为字符串,再根据小数点分割成两部分,最后根据两部分的长度来决定前面和后面怎么加0即可。