class array_temp
{
int[][] _data = null;
String[][] _printdata = null;
public array_temp(int[][] data){
this._data = data;//构造函数,传递数组
this.parseArray();
}
private int getMaxLength(){//获取最大长度数字的长度
int intlength = 0;
for(int i =0;i<this._data.length;i++){
for(int j =0;j<this._data[0].length;j++){
if((""+this._data[i][j]).length()>intlength){
intlength = (""+this._data[i][j]).length();
}
}
}
return intlength;
} private void parseArray(){//格式化数组到字符串数组
int intlength = getMaxLength();
_printdata = new String[_data.length][_data[0].length]; for(int i =0;i<this._printdata.length;i++){
for(int j =0;j<this._printdata[0].length;j++){
_printdata[i][j] ="";
}
}
for(int i =0;i<this._data.length;i++){
for(int j =0;j<this._data[0].length;j++){
if((""+this._data[i][j]).length()<intlength){
for(int k=0;k<intlength-(""+this._data[i][j]).length();k++){
_printdata[i][j] += " ";
}
_printdata[i][j] += _data[i][j];
}
else{
_printdata[i][j] = ""+_data[i][j];
}
}
}
}
public String getFormatStr(){
if (_printdata==null||_printdata.length==0||this._printdata[0].length==0){
return null;//如果数组为空
} int rowCount= this._printdata.length;//获取行数
int colCount= this._printdata[0].length;//获取列数
//定义返回字符串
String output = "The Data of two dimensional array:\n";
for (int i=0;i<rowCount ;i++ ){ //输出原始二维数组
for (int j=0;j<colCount ;j++ ){
if ( j == 0 && i == 0 ) output += "┏";
if ( j == 0 && i == rowCount-1 ) output += "┗";
if ( j == 0 && i != 0 && i != rowCount-1) output += "┃";
//二维数组的输出
output += " "+_printdata[i][j]+" "; if ( j == colCount-1 && i != 0 && i != rowCount-1) output += "┃";
if ( j == colCount-1 && i == 0 ) output += "┓";
if ( j == colCount-1 && i == rowCount-1 ) output += "┛";
}
output += "\n";
}
return output;
} public static void main(String[] args)
{
//预设 5 * 4 的矩阵数据
int[][] Data =
{ {999, 7, 6, 6},
{9, 7, 6, 6},
{35555, 5, 3, 3},
{6, 6, 4, 7},
{7, 5, 1, 4},
{1, 2, 8, 0}
}; array_temp temp = new array_temp(Data);
System.out.println(temp.getFormatStr());
}}
解决方案 »
- 关于IO的关闭和flush
- 数组内存空间分配与增长问题 请大侠赐教 谢谢了
- 怎样编程可以使软件测试人员比较容易测试?
- 小弟是初学者,请大家给与帮助30分
- 问一下?输出所有ASCII码?
- 如何引用JCheckBox的selected属性状态?
- 写的第一个java程序出错.老手指教..
- 关于session
- 大侠请帮忙啊。你们做的Applet运行时,是否遇见了access denied的情况,是否做了个policy文件这样的文件呢??急
- java中地iterator如何运用
- 简单的rmi程序编译出错,请指点。
- JBuilder9 enterprise enition download here ! come in!
至于泛型,java目前应该是不支持,不过在jdk1.5的预告上说会支持。
现在我也只有取出Object类型再进行强制类型转换,你再问问高手吧。