java 使用string类的compareto(string s)方法,对以下字符串排序,“m”,“a”,“p
时间: 2023-09-16 08:01:20 浏览: 187
对于给定的字符串“m”,“a”,“p”,我们可以使用String类的compareTo(String s)方法进行排序。
比较过程如下:
首先,我们将字符串“m”与“a”进行比较。通过比较它们的第一个字符,我们发现“m”的字符代码为109,“a”的字符代码为97。由于“m”的字符代码大于“a”,所以“m”大于“a”,即“m”排在“a”的后面。
接下来,我们将字符串“m”与“p”进行比较。通过比较它们的第一个字符,我们发现“m”的字符代码为109,“p”的字符代码为112。由于“m”的字符代码小于“p”,所以“m”小于“p”,即“m”排在“p”的前面。
最后,我们将字符串“a”与“p”进行比较。通过比较它们的第一个字符,我们发现“a”的字符代码为97,“p”的字符代码为112。由于“a”的字符代码小于“p”,所以“a”小于“p”,即“a”排在“p”的前面。
综上所述,按照字符串“m”,“a”,“p”的排列顺序,排序结果为“a”,“m”,“p”。
相关问题
java利用字符串方法compareTo(String s)实现5个字符串的排序。比如:
可以利用compareTo()方法实现字符串的字典序排序,具体步骤如下:
1. 定义一个字符串数组,包含要排序的5个字符串。
2. 使用一个循环,依次比较每个字符串,将其按照字典序排序。具体实现可以使用冒泡排序、选择排序等。
3. 在比较两个字符串时,使用compareTo()方法,如果字符串1大于字符串2,则返回一个正整数;如果字符串1小于字符串2,则返回一个负整数;如果两个字符串相等,则返回0。
4. 按照比较结果进行排序,最终得到排序后的字符串数组。
下面是一个示例代码:
```
public class StringSort {
public static void main(String[] args) {
String[] strings = {"apple", "banana", "orange", "grape", "pear"};
// 冒泡排序
for (int i = 0; i < strings.length - 1; i++) {
for (int j = 0; j < strings.length - i - 1; j++) {
if (strings[j].compareTo(strings[j + 1]) > 0) {
String temp = strings[j];
strings[j] = strings[j + 1];
strings[j + 1] = temp;
}
}
}
// 输出排序结果
for (String s : strings) {
System.out.println(s);
}
}
}
```
输出结果为:
```
apple
banana
grape
orange
pear
```
使用Java编程,从键盘接收全班姓名(字符串),然后进行排序; 算法:所接收的姓名存放到字符串数组中; 使用字符串的compareTo(String s)方法进行比较; 排序方法可以使用冒泡排序、快速排序等方法;
可以使用以下代码实现:
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入全班姓名,用空格分隔:");
String input = scanner.nextLine();
String[] names = input.split(" ");
Arrays.sort(names);
System.out.println("排序后的姓名为:");
for (String name : names) {
System.out.println(name);
}
}
}
这段代码使用了Scanner类从键盘接收输入,然后使用split方法将输入的字符串按空格分隔成字符串数组。接着使用Arrays类的sort方法对字符串数组进行排序,最后使用for循环输出排序后的结果。