在 Java 中对字符串进行排序并不是内置的 Java 功能,尽管 Java 确实提供了使用 Arrays.sort 对元素数组进行排序的技术,但 Java 库中可以使用直接方法对字符串进行排序。使用 Java 库提供的几种不同方法,我们可以轻松地在 Java 中进行排序,并且对字符串进行排序在任何 Java 应用程序中都有各种不同的用例。
开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
它有 2 种主要技术,开发人员可以根据用例使用它们。
这是一种非常简单直接的技术。我们在 Java 中对元素数组进行排序的方式与我们类似,并且将应用类似的逻辑。
要实现此技术,下面是此排序的步骤和示例:
示例:
代码:
import java.util.Arrays; import java.util.Scanner; public class SortString { public static void main(String args[]) { Scanner scanner = new Scanner(System.in); System.out.println("Input String Value which should be sorted : "); String inputString = scanner.nextLine(); char arrayOfCharacters[] = inputString.toCharArray(); // Step 1 Arrays.sort(arrayOfCharacters); // Step 2 String sortedString = new String(arrayOfCharacters); // Step 3 System.out.println("Before Sorting : " + inputString); System.out.println("After Sorting : " + sortedString); } }
输出:
限制:
示例:
输出:
这种技术主要用于当输入字符串可以是小写和大写混合字符时。这不是如上所述的直接技术,并且需要更多编码。我们将使用 Java 提供的相同数组排序技术,但同时我们将使用比较器,它将帮助我们比较字符串中的每个字符。
下面是在 Java 中实现此技术的步骤和此类字符串排序的示例。
示例:
代码:
import java.util.Arrays; import java.util.Scanner; import java.util.Comparator; public class SortString { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Input a String Value which should be sorted : "); String inputString = scanner.nextLine(); Character arrayOfCharacters[] = new Character[inputString.length()]; for (int i = 0; i < inputString.length(); i++) { arrayOfCharacters[i] = inputString.charAt(i); // Step 1 } Arrays.sort(arrayOfCharacters, new Comparator<Character>(){ // Step 2 @Override public int compare(Character c1, Character c2) { return Character.compare(Character.toLowerCase(c1), Character.toLowerCase(c2)); } }); StringBuilder outputString = new StringBuilder(arrayOfCharacters.length); for (Character c : arrayOfCharacters) outputString.append(c.charValue()); // Step 3 System.out.println("Before Sorting : " + inputString); System.out.println("After Sorting considering casing: " + outputString.toString()); } }
输出:
限制:
该技术是一种新技术,代码行最少,并使用 Java 8 Stream 功能以及仅与 Java 8 内联的 String.chars 方法。因此,请确保在应用此技术时,您的 Java 应用程序主要在输入字符串可以是小写和大写混合字符时使用。这不是如上所述的直接技术,并且需要更多编码。我们将使用 Java 提供的相同数组排序技术,但同时我们将使用比较器,它将帮助我们比较字符串中的每个字符。
在 Java 中对字符串进行排序非常简单,并且有许多不同的方法,开发人员可以根据应用程序的要求使用其中任何一种方法。它的范围从 2 行代码到编写全新的排序方法,并且还允许通过忽略大小写来对字符串进行排序。
以上是Java 中的字符串排序的详细内容。更多信息请关注PHP中文网其他相关文章!