我将如何修改我的代码以从头开始删除字符?

How would I modify my code to delete chars from the beginning?

因此,与其从最后一个索引开始,我希望它做相反的事情,它会开始删除字符串的开头(第一个索引)。

public class Sample 
{ 
  public static void main(String[] args) 
  {        
    char y[] = {'L','E','M','O','N','A','D','E'};

    int x = y.length;      
    for (int z = 0; z < len; z++)
    {           
      for(int w = 0; w < len - z; w++)
      {          
        System.out.print(word[w]);             
      }        
    }       
  }   
}

所以这段代码的输出将是:

LEMONADE
LEMONAD
LEMONA
LEMON
LEMO
LEM
LE
L

这次我想要的是相反的,从起始索引开始

示例:

LEMONADE
EMONADE
MONADE
ONADE
NADE
ADE
DE
D

请帮助我使用我提供的代码

public class Driver {
  public static void main(String[] args) {

    char y[] = {'L', 'E', 'M', 'O', 'N', 'A', 'D', 'E'};

    for (int i = 0; i < y.length; i++) {
        StringBuilder word = new StringBuilder();
        for (char c:
             getCharactersFromIndexAndBeyond(y, i)) {
            word.append(c);
        }
        System.out.println(word.toString());
    }
}
  static char[] getCharactersFromIndexAndBeyond(final char[] inputArray, final int indexToStartAfter){
    char[] outputArray = new char[inputArray.length - indexToStartAfter];
    int count = 0;
    for(int i = indexToStartAfter; i < inputArray.length; i++){
        outputArray[count] = inputArray[i];
        count++;
    }
    return outputArray;
}

}

如果您在所需的输出中输入错误,上面的代码应该可以工作 德 丁 应该 德 E

免责声明:

与此处发布的其他解决方案相比,我不会使用此解决方案,但它需要更多 drawn-out 方法来突出显示正在发生的事情。

这是您的答案代码。这应该适合你。

public class MyClass {
   public static void main(String[] args) { 
        char y[] = {'L','E','M','O','N','A','D','E'};
        int len = y.length;
        for (int z = 0; z < len; z++){
            for(int w = z; w < len; w++){
                System.out.print(y[w]);
            }
            System.out.println();
        }   
    }
}
    char y[] = {'L', 'E', 'M', 'O', 'N', 'A', 'D', 'E'};
    String lemonade = String.valueOf(y);
    for (int i = 0; i < lemonade.length(); i++) {
        if (i + 1 == lemonade.length()) {
            System.out.println(lemonade.substring(i - 1, lemonade.length() - 1));
        } else {
            System.out.println(lemonade.substring(i, lemonade.length()));
        }
    }