問題是這樣的要編寫一個靜態方法public static String right(char[][]x),返回二維字符型數組x表示的字符陣所連城的字符串s,數組x的一行結束時要求換行且每行內容右邊對齊。例如char[][]c={{'A','B','2','C'},{'M','/u0020','E'},{'9','-','1','1','N'}}返回的字符串為AB2C?M E9-11N新手 實在不會這樣轉化 那位大神能幫忙看看
1 回答
已采納
蜂之谷
TA貢獻564條經驗 獲得超863個贊
public?static?void?main(String[]?args)?{
char[][]?c?=?{{'A','B','2','C'},{'M','E'},{'9','-','1','1','N'}};
System.out.println(right(c));
}
public?static?String?right(char[][]?c){
String?result?=?"";
if?(c?!=?null?&&?c.length?>?0)?{
//計算每行內容最大的長度
int?maxLine?=?0;
for?(int?i?=?0;?i?<?c.length;?i++)?{
for?(int?j?=?0;?j?<?c[i].length;?j++)?{
if?(c[i].length?>?maxLine)?{
maxLine?=?c[i].length;
}
}
}
for?(int?i?=?0;?i?<?c.length;?i++)?{
//拼空格
if?(c[i].length?<?5)?{
int?a?=?5?-?c[i].length;
for?(int?k?=?0;?k?<?a;?k++)?{
result?+=?"?";
}
}
//拼字符
for?(int?j?=?0;?j?<?c[i].length;?j++)?{
result?+=?c[i][j];
}
//換行
result?+=?"\n";
}
}
return?result;
}添加回答
舉報
0/150
提交
取消
