我怎样才能以相反的顺序字符数组?(How can I get a char array in rev

2019-07-04 23:44发布

我分配的问题是这样的

写一个程序使用该打印字母按相反顺序字符数组

  void printReverse(char letters[], int size); 

例如,如果该数组包含{ 'C', 'S', 'C', '2', '6', '1'}的输出应为 “162csc”。

我试过,但我不知道这意味着什么

void printReverse(char letters[], int size);

我这样做,但与调用方法“printReverse”为主要方法的问题

import java.util.Arrays;
import java.util.Collections;

public class search {

public static void main(String[] args) {          

char[] letters = {'e', 'v', 'o', 'l', '4'};
printReverse();

}

public void printReverse(char[] letters, int size){

for (int i = letters.length-1; i >= 0 ; i--){
System.out.print(letters[i]);
}
}

}

Answer 1:

我相信你写的是你要创建方法的签名。

public void printReverse(char[] letters, int size){
   //code here
}

你将不得不遍历数组并打印它包含什么倒退。 使用反“for循环”要经过的每个项目中的“信”。 我会告诉你这些结合自己因为它是一个任务。 下面是一个for循环的例子:

for (int i = array.length-1; i >= 0 ; i--){
    System.out.print(array[i]);
}


Answer 2:

您可以使用StringBuilder的#反向()这样的方法:

String reverse = new StringBuilder(new String(letters)).reverse().toString();


Answer 3:

`

//not only prints the reverse order, but creates new char array with chars in desired order
char[] letters = {'e', 'v', 'o', 'l', '4'};
int i = letters.length - 1, j = 0;
char[] let = new char[letters.length];
while(i >= 0){
     let[j] = letters[i];
     i--;
     j++;
}
for (char c : let){
     System.out.print(c);
}

`

输出:4love



Answer 4:

void printReverse(char letters[], int size)是你必须做的函数的签名。 例如

void printReverse(char letters[], int size) {
//your code goes here
}

并从与参数主窗口调用它。



Answer 5:

男人你的代码是正确的,除了在main方法稍作改动,并在环路和方法必须是静态的。

签名printReverse(烧焦[]字母,INT大小)意味着,当你调用它,你必须通过炭阵列和阵列的大小

请尝试以下

import java.util.Arrays;
import java.util.Collections;

public class search {

    public static void main(String[] args) {          

   char[] letters = {'e', 'v', 'o', 'l', '4'};

   printReverse(letters,5);

}

public static void printReverse(char[] letters, int size){

    for (int i = size-1; i >= 0 ; i--)
    {

     System.out.print(letters[i]);
    }
  }

 }


Answer 6:

这大约需要6毫秒。 它反转打印前一个字符数组“就地”。

public static void reverseString(char[] s) {
    int len = s.length;

    if (len == 0)
        return;

    for (int i=0; i < (len/2); i++)
    {
        char l = s[i];
        s[i] = s[len-i-1];
        s[len-i-1] = l;
    }

    System.out.println(s);
}


文章来源: How can I get a char array in reverse order?
标签: java arrays char