ホームページ  >  記事  >  Java  >  Javaでの文字列配列のソート

Javaでの文字列配列のソート

WBOY
WBOYオリジナル
2024-08-30 15:29:17660ブラウズ

並べ替えは、配列のさまざまな要素を必要な順序で設定するため、プログラミングにおいて非常に重要な機能です。一般に、アルファベット順または昇順または降順を使用します。並べ替えは通常、生の未整理の形式のデータを、人間の脳にとって意味のあるものにするために、適切で整理された順序に変換するために行われます。文字列配列のソートを実行するには 2 つの方法があります。最初の方法はカスタム並べ替えまたはユーザー定義のロジック並べ替えと呼ばれ、2 番目の方法は自然並べ替えまたは Array.sort() 並べ替えと呼ばれます。この記事では、複数の例を使用して両方の方法とその動作について説明します。このトピックでは、Java の文字列配列のソートについて学びます。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

Java で文字列配列をソートする方法と例

以下に例と方法を示します

1.ユーザー定義ロジックまたはカスタム並べ替えの使用

並べ替えは、各要素を残りの要素と個別に比較することで実行できます。第1の例でも同様の処理が行われる。 2 つのループが使用されており、比較実行中の繰り返しは内側のループによって回避されます。条件 (favouritefood[a].compareTo(favouritefood[b])>0) の結果が 0 よりも true の場合、プログラムは交換を実行し、配列の並べ替えが完了します。同様に、条件を使用して配列のすべての要素がチェックされ、並べ替えが完了します。この例では、ユーザー定義のロジックまたはカスタムの並べ替えを使用して、要素がアルファベット順に並べ替えられます。

例 #1
import java.util.Arrays;
public class Sortingexample1
{
public static void main(
String args[])
{
String[] favouritefood = {" Pizza \n "
, " Pasta \n "
, " Chole Bhature \n "
, " Paratha \n "
, " Chowmein \n "
, " Momo \n "
, " Fried Rice \n "
, " Maggie \n "
, " Garlic Bread \n "
, " Biryani \n "
, " Gulab Jamun \n "
};
System.out.print(" Rahul favourite foods are: \n " );
int length = favouritefood.length;
for(int a = 0
; a<length-1
; a++)
{
for (int b = a+1
; b<favouritefood.length
; b++)
{
if(favouritefood[a].compareTo(
favouritefood[b]
)>0)
{
String virtual = favouritefood[a];
favouritefood[a] = favouritefood[b];
favouritefood[b] = virtual;
}
}
}
System.out.println(
Arrays.toString(
favouritefood
));
}
}

出力:

Javaでの文字列配列のソート

例 #2

この例は、3 つの簡単な手順を使用して実行されました。まず、ループを使用して入力文字列を文字配列に変換する必要があります。ここで、Arrays.sort(array1, new Comparator () を使用して文字配列を並べ替えます。ここでは、カスタム並べ替えの動作に従って、compare() メソッドが使用されます。次に、StringBuilder を使用して文字列を作成します。文字配列

import java.util.Arrays;
import java.util.Comparator;
public class Sortingexample2
{
public static String sortString(
String initialstringused
)
{
System.out.println(
" Mixed kinda character string used \n "
);
Character array1[] = new Character[
initialstringused.length()
];
for (int a = 0
; a < initialstringused.length()
; a++) {
array1[a] = initialstringused.charAt(a);
}
System.out.println(
" We use character string here \n "
);
Arrays.sort(
array1, new Comparator<Character>()
{
@Override
public int compare(Character FirstInput, Character SecondInput)
{
return Character.compare(Character.toUpperCase(FirstInput),
Character.toUpperCase(SecondInput));
}
});
StringBuilder b = new StringBuilder(array1.length);
for (
Character c
: array1
)
b.append(
c.charValue()
);
return b.toString();
}
public static void main(String[] args)
{
String initialstringused = " \n Biryani is loved by Rahul \n ";
String stringwegetinreturn = sortString(
initialstringused
);
System.out.println(
" Got an output as : \n " + stringwegetinreturn
);
System.out.println(
" \n Initial sentence entered was : \n " + initialstringused
);
}
}

出力:

Javaでの文字列配列のソート

2. Arrays.sort() または自然な並べ替えを使用する

自然選別は3つのステップで行われます。まず、入力文字列に toCharArray() メソッドを適用して、入力文字列の文字配列を作成します。ここで、Arrays.sort(char c[]) メソッドを使用して文字配列をソートします。文字配列からソートされた文字列を作成するために、文字列クラスのコンストラクターが使用されるようになりました。

例 #1
import java.util.Arrays;
public class Sortingexample3
{
public static String sortString(
String initialstringused)
{
char sameArray[] = initialstringused.toCharArray();
System.out.println(
" Mixed kinda character string used \n "
);
Arrays.sort(
sameArray);
System.out.println(
" We use character string here \n "
);
return new String(sameArray);
}
public static void main(String[] args)
{
String initialstringused = " \n Choley Bhature is loved by Rahul \n ";
String stringwegetinreturn = sortString(
initialstringused
);
System.out.println(
"Input String : " + initialstringused
);
System.out.println("Output String : " + stringwegetinreturn
);
}
}

出力:

Javaでの文字列配列のソート

例 #2
import java.util.Arrays;
public class Sortingexample4
{
public static void main(String args[])
{
String[] favouritefood = {" \n Pizza \n "
, " \n Pasta \n "
, " \n Chole Bhature \n "
, " \n Paratha \n "
, " \n Chowmein \n "
, " \n Momo \n "
, " \n Fried Rice \n "
, " \n Maggie \n "
, " \n Garlic Bread \n "
, " \n Biryani \n "
, " \n Gulab Jamun \n "
};
System.out.print(" \n Actual food list entered: \n " );
System.out.println(Arrays.toString(favouritefood));
System.out.print(" \n Rahul favourite foods are: \n " );
Arrays.sort(favouritefood);
System.out.println(Arrays.toString(favouritefood));
}
}

出力:

Javaでの文字列配列のソート

結論

上記の記事に基づいて、Java のソート文字列配列を理解しました。文字列配列の並べ替えには 2 つの方法があり、記事では両方の方法について複数の例を使用して説明しています。この例は、初心者が Java コードでの Sort String Array の実装を理解し、必要な結果を得るのに役立ちます。

以上がJavaでの文字列配列のソートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:Java 配列.push次の記事:Java 配列.push