首页 > Java > java教程 > 正文

java数组中两个数怎么调换

煙雲
发布: 2024-11-02 16:36:26
原创
330人浏览过
在 Java 数组中调换两个数的方法有四种:使用临时变量使用异或运算使用 Collections.swap() 方法使用 Java 8+ 的流

java数组中两个数怎么调换

在 Java 数组中调换两个数

方法 1:使用临时变量

  • 创建一个临时变量来存储其中一个数字。
  • 将另一个数字分配给第一个数字。
  • 将临时变量的值分配给第二个数字。
int[] arr = {1, 2, 3};
int temp = arr[0];
arr[0] = arr[1];
arr[1] = temp;
登录后复制

方法 2:使用异或运算

异或运算符 (^) 可以用来调换两个数字,而不需要临时变量:

立即学习Java免费学习笔记(深入)”;

int[] arr = {1, 2, 3};
arr[0] ^= arr[1];
arr[1] ^= arr[0];
arr[0] ^= arr[1];
登录后复制

这个过程的工作原理如下:

  • arr[0] 和 arr[1] 的异或结果存储在 arr[0] 中,即 arr[0] = arr[0] ^ arr[1]。
  • arr[1] 和 arr[0] 的异或结果存储在 arr[1] 中,即 arr[1] = arr[1] ^ arr[0]。
  • arr[0] 和 arr[1] 的异或结果存储在 arr[0] 中,即 arr[0] = arr[0] ^ arr[1],这将使 arr[0] 恢复其原始值。

方法 3:使用 Collections.swap() 方法

如果数组是由集合类(如 ArrayList)存储的,则可以使用 Collections.swap() 方法轻松调换两个数字:

List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);

Collections.swap(list, 0, 1);
登录后复制

方法 4:使用 Java 8+ 的流

Java 8+ 中的流 API 提供了一种方便的方法来调换数组中的两个数字:

int[] arr = {1, 2, 3};

int temp = IntStream.of(arr[0], arr[1])
        .reduce((a, b) -> a ^ b)
        .getAsInt();

arr[0] ^= temp;
arr[1] ^= temp;
arr[0] ^= temp;
登录后复制

以上就是java数组中两个数怎么调换的详细内容,更多请关注php中文网其它相关文章!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号