2013-11-15 45 views
-1

对于我们的Java类,我们必须使用L allignCentered格式化文本,R allign.文本格式只使用字符串

我已经找到了如何将字符串保存到一排,但我不知道如何重置该行。

任何帮助将是伟大的!

public static String word(String text, int width) { 

    String word = ""; 
    String all = ""; 
    String row = ""; 
    String newRow = ""; 
    int textlen = text.length(); 

    for (int i = 0; i < text.length(); i++) { 
     char current = text.charAt(i); 
     // works gives a word 
     do { 
      if (text.charAt(i) != ' ') { 

       word += text.charAt(i); 
      } 
      i++; 

     } while (text.charAt(i) != ' ' && i < textlen); 
     // till here 
     word += " "; 
     // System.out.println("this is word: " +word); 

     while (row.length() < width) { 
      if (word.length() < width 
        && (row.length() + word.length()) < width) { 
       row += word; 
       if ((width - (row.length() + word.length())) < 3) { 
        System.out.println("here is row: " + row); 
       } 

      } 
      if (word.length() > width 
        && (row.length() + word.length()) > width) { 

      } 
      word = ""; 
     } 
     row = ""; 
    } 

    return word; 
} 
+0

我不明白,为什么你有开始循环'而(row.length()<宽度){'。在代码的这一点上,你有一个单词。什么是循环? –

+0

你有什么具体问题?您的实际结果与您的预期结果有何不同,以及您迄今为止尝试解决问题所做的工作? –

+0

@DavidWallace'row + = word'修改循环内的'row'。一旦大小超过“宽度”,循环终止。 –

回答

0

如果你想一个String变量重置为空字符串,只需将其分配给一个空字符串:

row = ""; 
+0

但我如何添加这个,以便它适合循环? – user1924782

+0

你会把它放在你希望'row'变成空字符串的逻辑中的任何一点上......你希望发生什么? –

+0

好吧,我只是混淆了如何让这个循环获取新的单词值,以便它们可以输出到新的行。 if(word.length()宽度 &&(row.length()+ word.length())>宽度){ }' – user1924782