需要帮助将2D字符串数组向左移动

时间:2019-02-10 04:26:57

标签: java encryption multidimensional-array

到目前为止,我已经展示了一个看起来像这样的26X26数组: A B C D... A B C D... abcd ...

但是我需要这样做:

abcd BCDA cdab ...

基本上每一行都向左移动,但是每次我尝试尝试时,都会遇到一些错误。任何帮助,将不胜感激。

这是我的代码:

public static String [][] table(String [][] cipher){

    String [][] table = {{"abcdefghijklmnopqrstuvwxyz"}};

    for (int i =0; i < cipher.length; i++){

      cipher[i]  =  table[0];

      for(int j = 0; j< cipher[i].length; j++){

      cipher[j] = table[0];
  }
}
 return cipher;

}

1 个答案:

答案 0 :(得分:0)

不确定您要使用2d阵列实现什么。但是您可以使用类似的方法将数组内的String移到左侧。

class Main {
    public static void main(String[] args) {
        table(new String[26][26]);
    }

    public static String[][] table(String[][] cipher) {

        String[][] table = {{"abcdefghijklmnopqrstuvwxyz"}};
        for (int i = 0; i < cipher.length; i++) {
            String[] word = table[0];
            cipher[i] = leftShift(word, i);
        }
        return cipher;
    }

    public static String[] leftShift(String[] array, int number) {
        String word = array[0];
        number = number % word.length();
        return new String[]{word.substring(number) + word.substring(0, number)};
    }
}