簡體   English   中英

如何按字母順序對隨機生成的字符進行排序?

[英]How do I sort randomly generated characters alphabetically?

這就是我到目前為止

public class RandomCharacter
{
    public static char getRandomUpperCaseLetter()
    {
        int ascii = (int) (Math.random()*26) + (int) 'A';
        return (char)ascii;
    }
    public static char getRandomDigitCharacter()
    {
        int digit = (int)(Math.random()*10) + (int) '0';
        return (char)digit;
    }

    public static void main(String [] args)
    {

        for (int i = 1; i <= 100; i++)
        {
            System.out.print(getRandomUpperCaseLetter());
            if(i%10 == 0) 
                System.out.print("\n"); 
        }

    }
}

我不知道如何按字母順序具體排序,我已經嘗試了幾個小時,但找不到任何東西。 有人可以使用我的代碼來教我這是如何工作的嗎?

要對值進行排序,必須先將它們存儲在某種數據結構中,例如數組列表,然后再對其進行排序。 然后,如果您使用了可排序的集合(例如數組列表),則可以使用.sort()方法,列表將被自動排序。 例如/參考: http//beginnersbook.com/2013/12/how-to-sort-arraylist-in-java/

對於自然排序,您只需在字符串中添加生成的字母,然后調用Collections.sort(listVariable)即可。 這應該可以回答您的問題。

樣例程序

import java.util.*;
public class Details  {

public static void main(String args[]){
   ArrayList<String> listofcountries = new ArrayList<String>();
   listofcountries.add("India");
   listofcountries.add("US");
   listofcountries.add("China");
   listofcountries.add("Denmark");

   /*Unsorted List*/
   System.out.println("Before Sorting:");
   for(String counter: listofcountries){
        System.out.println(counter);
    }

   /* Sort statement*/
   Collections.sort(listofcountries);

   /* Sorted List*/
   System.out.println("After Sorting:");
   for(String counter: listofcountries){
        System.out.println(counter);
    }
}

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM