Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带字符串的Java排序数组_Java - Fatal编程技术网

带字符串的Java排序数组

带字符串的Java排序数组,java,Java,嘿,我有一个项目,其中程序以降序显示团队分数,但问题是我无法切换团队名称,以便它们可以按顺序排列,因为团队名称数组是一个字符串 for(int i = 0;i<tabPTS.length;i++){ // tabEquipe is the array containing the team names. for (int j = i+1; j<tabPTS.length;j++){ if(tabPTS[i]<tabPTS[j]){

嘿,我有一个项目,其中程序以降序显示团队分数,但问题是我无法切换团队名称,以便它们可以按顺序排列,因为团队名称数组是一个字符串

 for(int i = 0;i<tabPTS.length;i++){ // tabEquipe is the array containing the team names.
       for (int j = i+1; j<tabPTS.length;j++){
           if(tabPTS[i]<tabPTS[j]){
               temp = tabPTS[i];
               tabPTS[i] = tabPTS[j];
               tabPTS[j] = temp;
           }
       }
   }
     System.out.println("Equipes: ");
    System.out.println();
    System.out.print("\t" + "PJ");
    System.out.print("\t" + "V");
    System.out.print("\t" +  "D");
    System.out.print("\t" +  "PTS");
    System.out.println();
   for(int i = 0;i<tabPTS.length;i++){
        int pos = i;

        System.out.println(tabEquipe[i] + "\t" +   tabPJ[i] + "\t"
                + tabVict[i] + "\t" +  tabDef[i] + "\t" + tabPTS[i]); 

   }

for(int i=0;i如果我正确理解了问题,您希望根据团队的得分按排序顺序输出团队名称及其得分。
解决此问题的多种方法:

1) 尝试定义一个类型,将团队名称和他们的分数放在一起,然后根据他们的分数对这些对象的数组进行排序


2) 如果必须将分数和团队名称保留为单独的数组,请在选择排序算法中,将团队名称数组中的值与分数数组一起切换

如果我正确理解了问题,您希望根据团队的得分按排序顺序输出团队名称和得分。 解决此问题的多种方法:

1) 尝试定义一个类型,将团队名称和他们的分数放在一起,然后根据他们的分数对这些对象的数组进行排序


2) 如果必须将分数和团队名称保留为单独的数组,请在选择排序算法中,将团队名称数组中的值与分数数组一起切换

要在Java中对字符串数组进行排序,需要将数组的每个元素与所有剩余元素进行比较,如果结果大于0,则交换它们

要做到这一点,您需要使用两个循环(嵌套),其中内部循环以i+1开始(其中i是外部循环的变量),以避免比较中的重复

这是一个例子

import java.util.Arrays;

public class StringArrayInOrder {
   public static void main(String args[]) {
      String[] myArray = {"JavaFX", "HBase", "OpenCV", "Java", "Hadoop", "Neo4j"};
      int size = myArray.length;

      for(int i = 0; i<size-1; i++) {
         for (int j = i+1; j<myArray.length; j++) {
            if(myArray[i].compareTo(myArray[j])>0) {
               String temp = myArray[i];
               myArray[i] = myArray[j];
               myArray[j] = temp;
            }
         }
      }
      System.out.println(Arrays.toString(myArray));
   }
}
您还可以使用数组类的
排序()方法对数组进行排序

像这样

String[] myArray = {"JavaFX", "HBase", "OpenCV", "Java", "Hadoop","Neo4j"};
Arrays.sort(myArray);
System.out.println(Arrays.toString(myArray));
您可以按如下降序排列
arr[]

String arr[] = {"p","q","c"}; 

// Sorts arr[] in ascending order 
        Arrays.sort(arr); 
        System.out.printf("Modified arr[] : \n%s\n\n", 
                          Arrays.toString(arr)); 

        // Sorts arr[] in descending order 
        Arrays.sort(arr, Collections.reverseOrder());
和输出

Modified arr[] : 


Modified arr[] : 
[q, p, c]

要在Java中对字符串数组进行排序,需要将数组的每个元素与所有剩余元素进行比较,如果结果大于0,则交换它们

要做到这一点,您需要使用两个循环(嵌套),其中内部循环以i+1开始(其中i是外部循环的变量),以避免比较中的重复

这是一个例子

import java.util.Arrays;

public class StringArrayInOrder {
   public static void main(String args[]) {
      String[] myArray = {"JavaFX", "HBase", "OpenCV", "Java", "Hadoop", "Neo4j"};
      int size = myArray.length;

      for(int i = 0; i<size-1; i++) {
         for (int j = i+1; j<myArray.length; j++) {
            if(myArray[i].compareTo(myArray[j])>0) {
               String temp = myArray[i];
               myArray[i] = myArray[j];
               myArray[j] = temp;
            }
         }
      }
      System.out.println(Arrays.toString(myArray));
   }
}
您还可以使用数组类的
排序()方法对数组进行排序

像这样

String[] myArray = {"JavaFX", "HBase", "OpenCV", "Java", "Hadoop","Neo4j"};
Arrays.sort(myArray);
System.out.println(Arrays.toString(myArray));
您可以按如下降序排列
arr[]

String arr[] = {"p","q","c"}; 

// Sorts arr[] in ascending order 
        Arrays.sort(arr); 
        System.out.printf("Modified arr[] : \n%s\n\n", 
                          Arrays.toString(arr)); 

        // Sorts arr[] in descending order 
        Arrays.sort(arr, Collections.reverseOrder());
和输出

Modified arr[] : 


Modified arr[] : 
[q, p, c]
你在找这个吗你在找这个吗