交换a和b的值

方法一:

 1 package day05;
 2 
 3 public class TestDemo01 {
 4     /*交换a、b的值:
 5      * 思路:
 6      * 1、定义一个三方变量temp,将a原本的值交给temp(a的值不会丢)
 7      * 2、使用a变量记录b的值,(第一步交换完毕,b的值也不会丢)
 8      * 3、使用b变量记录temp的值,也就是a原本的值(交换完毕)
 9      * 4、输出a和b变量即可
10      */
11     public static void main(String[] args) {
12         int a = 10;
13         int b = 20;
14         int temp = a;
15         a = b;
16         b = temp;
17         System.out.println("a:" + a);
18         System.out.println("b:" + b);
19     }
20 }

执行结果:

  方法二:

 1 package day05;
 2 
 3 public class TestDemo02 {
 4     public static void main(String[] args) {
 5         //交换a、b的值
 6         int a = 10;
 7         int b = 20;
 8         a = a ^ b;
 9         b = a ^ b;
10         a = a ^ b;
11         System.out.println("a=" + a);
12         System.out.println("b=" + b);
13     }
14 }

执行结果:

  eg:

 1 package day05;
 2 
 3 public class TestDemo03 {
 4     /*  已知一个数组 arr = {1, 2, 3, 5, 6, 9}; 用程序实现把数组中的元素值交换,
 5       交换后的数组 arr = {9,6,5,3,2,1}; 并在控制台输出交换后的数组元素。
 6 
 7       步骤:
 8              1. 定义两个变量, start和end来表示开始和结束的指针.
 9              2. 确定交换条件, start < end 允许交换
10              3. 循环中编写交换逻辑代码
11              4. 每一次交换完成, 改变两个指针所指向的索引 start++, end--
12              5. 循环结束后, 遍历数组并打印, 查看反转后的数组
13 
14   */
15     public static void main(String[] args) {
16         int[] arr = {1, 2, 3, 5, 6, 9};
17         int start = 0;
18         int end = arr.length - 1;
19         for (; start < end; start++, end--) {
20             int temp = arr[start];
21             arr[start] = arr[end];
22             arr[end] = temp;
23         }
24         for (int i = 0; i < arr.length; i++) {
25             System.out.println(arr[i]);
26         }
27     }
28 }

执行结果:

  eg:

 1 package day05;
 2 
 3 public class TestDemo04 {
 4     //将数组的第一个和最后一个元素进行交换
 5     public static void main(String[] args) {
 6         int[] arr = {1, 2, 3, 4, 5};
 7         int temp = arr[0];
 8         arr[0] = arr[4];
 9         arr[4] = temp;
10         for (int i = 0; i < arr.length; i++) {
11             System.out.println(arr[i]);
12         }
13     }
14 }

执行结果:

欢迎批评指正,提出问题,谢谢!
原文地址:https://www.cnblogs.com/xxeleanor/p/14220533.html