当前位置:首页 > Java

Java如何逆序

2026-03-19 16:20:52Java

逆序数组或列表

在Java中逆序一个数组或列表可以通过多种方式实现。以下是几种常见的方法:

使用 Collections.reverse() 方法 适用于 List 类型的数据结构,如 ArrayListLinkedList

import java.util.Collections;
import java.util.ArrayList;
import java.util.List;

List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
Collections.reverse(list);
System.out.println(list); // 输出 [3, 2, 1]

手动逆序数组 通过交换数组元素实现逆序。

int[] array = {1, 2, 3, 4, 5};
for (int i = 0; i < array.length / 2; i++) {
    int temp = array[i];
    array[i] = array[array.length - 1 - i];
    array[array.length - 1 - i] = temp;
}
System.out.println(Arrays.toString(array)); // 输出 [5, 4, 3, 2, 1]

逆序字符串

字符串逆序可以通过 StringBuilder 或手动交换字符实现。

使用 StringBuilder.reverse()

String str = "Hello";
String reversed = new StringBuilder(str).reverse().toString();
System.out.println(reversed); // 输出 "olleH"

手动逆序字符串

String str = "Hello";
char[] chars = str.toCharArray();
for (int i = 0; i < chars.length / 2; i++) {
    char temp = chars[i];
    chars[i] = chars[chars.length - 1 - i];
    chars[chars.length - 1 - i] = temp;
}
String reversed = new String(chars);
System.out.println(reversed); // 输出 "olleH"

逆序链表

如果是自定义链表结构,可以通过修改指针方向实现逆序。

单链表逆序示例

class ListNode {
    int val;
    ListNode next;
    ListNode(int val) { this.val = val; }
}

public ListNode reverseList(ListNode head) {
    ListNode prev = null;
    ListNode current = head;
    while (current != null) {
        ListNode nextTemp = current.next;
        current.next = prev;
        prev = current;
        current = nextTemp;
    }
    return prev;
}

逆序数字

逆序一个数字可以通过数学运算实现。

Java如何逆序

int num = 12345;
int reversed = 0;
while (num != 0) {
    reversed = reversed * 10 + num % 10;
    num /= 10;
}
System.out.println(reversed); // 输出 54321

注意事项

  • 对于数组或字符串,手动逆序时需注意边界条件(如长度为奇数或偶数)。
  • 链表逆序时需正确处理指针,避免丢失节点引用。
  • 数字逆序需考虑溢出问题(如逆序后超出 int 范围)。

标签: 逆序Java
分享给朋友:

相关文章

Java 如何初始化

Java 如何初始化

初始化基本数据类型 基本数据类型(如 int、double、boolean 等)可以直接赋值初始化: int num = 10; double price = 29.99; boolean is…

js实现查找逆序数

js实现查找逆序数

逆序数概念 逆序数指在一个序列中,前面的元素大于后面的元素的对数。例如序列 [2, 4, 1, 3, 5] 中,逆序对有 (2,1)、(4,1)、(4,3),逆序数为 3。 暴力法实现 直接…

Java如何换行

Java如何换行

在Java中换行的方法 使用转义字符\n 在字符串中插入\n表示换行符,适用于控制台输出或文本处理: System.out.println("第一行\n第二行"); 使用System.lineS…

Java如何实现异步处理

Java如何实现异步处理

异步处理的实现方式 Java中实现异步处理有多种方法,包括使用多线程、Future、CompletableFuture以及响应式编程框架等。以下是几种常见的实现方式: 使用多线程 通过创建新线程执行…

Java 如何初始化

Java 如何初始化

初始化基本数据类型 Java 的基本数据类型(如 int, double, boolean 等)可以直接赋值初始化: int num = 10; double price = 29.99; bo…

Java如何添加事件

Java如何添加事件

添加事件监听器的方法 在Java中,事件监听通常用于响应用户操作(如按钮点击、键盘输入等)或系统事件。以下是几种常见的事件监听实现方式: 使用匿名内部类 button.addActionListe…