输入列画表格 在图形环境中很容易做出漂亮的表格。但在控制台环境中就比较困难了。 有的时候可以用一些符号大略地模拟:(word文档中可能不整齐,拷贝到记事本中看)...
生活随笔
收集整理的這篇文章主要介紹了
输入列画表格 在图形环境中很容易做出漂亮的表格。但在控制台环境中就比较困难了。 有的时候可以用一些符号大略地模拟:(word文档中可能不整齐,拷贝到记事本中看)...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近研究輸入列,稍微總結一下,以后繼續補充:
/** 畫表格 在形圖環境中很易容做出亮漂的表格。但在控制臺環境中就比擬困難了。 有的時候可以用一些符號大略地擬模:(word文檔中可能不整齊,拷貝到記事本中看) +-------+------+ |abc |xyz=tt| +-------+------+ |hellomm|t2 | +-------+------+ 本標題要求計設一個序程,把用戶輸入的內容用這類“準表格”的式方現展出來。體具的要求是: 用戶輸入的第一行是一個整數,表現接下來有多少行信息。接下來的每行由多少單元構成。單元間用逗號離開。 序程出輸:用表格式方新重現展的輸入內容。 例如: 用戶輸入: 3 cat,dog,good-luck 1,2,5 do not use,,that 則序程出輸:(word文檔中可能不整齊,拷貝到記事本中看) +----------+---+---------+ |cat |dog|good-luck| +----------+---+---------+ |1 |2 |5 | +----------+---+---------+ |do not use| |that | +----------+---+---------+ 從中不難看出: 兩個連續的逗號表現間中有一個內容為空的單元 列的數目由大最的單元數的那行決議 列的寬度由同列的最寬的單元決議 單元格中的信息左對齊可以設假:用戶輸入的大最行數為30,可能的最多列數為40。*/ import java.util.Scanner; public class 畫表格 {// 出輸public static void show(String[][] s,int[] len){StringBuffer sb = new StringBuffer("+");for(int i=0;i<len.length;i++){for(int j=0;j<len[i];j++){sb.append("-");}sb.append("+");}System.out.println(sb);for(String[] x:s){for(String y:x){System.out.print(y);}System.out.println("\n"+sb);}}// 分拆串public static String[][] splitS(String[] s) {String[][] t = new String[s.length][];for(int i=0;i<s.length;i++){t[i] = s[i].split(","); // 按分隔符分拆}return t;}// 失掉每列的最長的串的長度public static void maxLen(String[][] t, int[] len) {for(int i=0;i<t[0].length;i++){for(int j=0;j<t.length;j++){if(t[j][i].length()>len[i]){len[i] = t[j][i].length(); // 失掉每列的最長的串的長度}}}}public static String fillS(String s,int n,int j,int end){StringBuffer sb = new StringBuffer();int x = n-s.length();sb.insert(0, '|');sb.append(s);for(int i=0;i<x;i++){sb.append(" ");}if(j==end){sb.append("|");}return sb.toString();}// 補空格public static void fillSpace(String[][] data,int[] len){for(int i=0;i<data.length;i++){for(int j=0;j<data[i].length;j++){if(data[i][j].length()<=len[j]){data[i][j] = fillS(data[i][j],len[j],j,data[i].length-1); // 補空格}}}}public static void f(String[] s){String[][] data = splitS(s); // 分拆串int[] len = new int[data[0].length];maxLen(data, len); // 失掉每列的最長的串的長度fillSpace(data,len); // 補空格 加"|"show(data,len); // 出輸}public static void main(String[] args){Scanner scan = new Scanner(System.in);Scanner scan2 = new Scanner(System.in);System.out.println("輸入的行數(整數)");int n = scan.nextInt();String[] s = new String[n];for(int i=0;i<n;i++){s[i] = scan2.nextLine();}f(s);} } 每日一道理正所謂“學海無涯”。我們正像一群群魚兒在茫茫的知識之海中跳躍、 嬉戲,在知識之海中出生、成長、生活。我們離不開這維持生活的“海水”,如果跳出這個“海洋”,到“陸地”上去生活,我們就會被無情的“太陽”曬死。
????運行結果:
輸入的行數(整數) 3 cat,dog,good-luck 1,2,5 do not use,,that +----------+---+---------+ |cat |dog|good-luck| +----------+---+---------+ |1 |2 |5 | +----------+---+---------+ |do not use| |that | +----------+---+---------+文章結束給大家分享下程序員的一些笑話語錄: 那是習慣決定的,一直保持一個習慣是不好的!IE6的用戶不習慣多標簽,但是最終肯定還是得轉到多標簽的瀏覽器。歷史(軟件UI)的進步(改善)不是以個人意志(習慣)為轉移的!
轉載于:https://www.cnblogs.com/xinyuyuanm/archive/2013/04/21/3033569.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的输入列画表格 在图形环境中很容易做出漂亮的表格。但在控制台环境中就比较困难了。 有的时候可以用一些符号大略地模拟:(word文档中可能不整齐,拷贝到记事本中看)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么查看SQL SERVER 2000是
- 下一篇: linux系统中各个文件描述——陆续添加