zoukankan      html  css  js  c++  java
  • Java交换两个数字

    一.四种方式交换两个数字

    • 直接交换:失败
    • 包装类交换:失败
    • 数组方式交换:成功
    • 成员变量交换:成功
     1 public class SwapNumbers {
     2     public int a;
     3     public int b;
     4     
     5     //包装类交换
     6     public static void swap (Integer a, Integer b) {    
     7         Integer temp = a;
     8         a = b;
     9         b = temp;
    10     }
    11     
    12     //直接交换
    13     public static void swap (int a, int b) {    
    14         int temp = a;
    15         a = b;
    16         b = temp;
    17     }
    18     
    19     //数组
    20     public static void swap (int[] arr) {    
    21         int temp = arr[0];
    22         arr[0] = arr[1];
    23         arr[1] = temp;
    24     }
    25     
    26     //成员对象
    27     public  void swapNum(int a, int b) {    
    28         this.a = b;
    29         this.b = a;
    30     }
    31     
    32     //包装类打印
    33     public static void print(Integer m, Integer n) {
    34         System.out.println("m=" + m.intValue() + " n=" + n.intValue());
    35     }
    36     //直接打印
    37     public static void print(int a, int b) {
    38         System.out.println("a=" + a + " b=" + b);
    39     }
    40     //对象打印
    41     public  void print() {
    42         System.out.println("a=" + this.a + " b=" + this.b);
    43     }
    44     //数组打印
    45     public static void print(int[] a) {
    46         for (int i : a) {
    47             System.out.print(i + " ");
    48         }
    49         System.out.println();
    50     }
    51     
    52     
    53     public static void main(String[] args) {
    54         
    55         System.out.println("------直接交换----------");
    56         int a = 2, b = 3;
    57         
    58         print(a,b);
    59         swap(a, b);
    60         print(a,b);
    61         
    62         System.out.println("------包装类交换----------");
    63         Integer m = new Integer(2);
    64         Integer n = new Integer(3);
    65         
    66         print(m,n);
    67         swap(m, n);
    68         print(m,n);
    69         
    70         System.out.println("-------数组交换---------");
    71         int[] arr = {2,3};
    72         print(arr);
    73         swap(arr);
    74         print(arr);
    75         
    76         System.out.println("-------成员变量交换---------");
    77         print(a,b);
    78         SwapNumbers sn = new SwapNumbers();
    79         sn.swapNum(a, b);
    80         sn.print();
    81         
    82     }
    83 }

    结果:

     1 ------直接交换----------
     2 a=2 b=3
     3 a=2 b=3
     4 ------包装类交换----------
     5 m=2 n=3
     6 m=2 n=3
     7 -------数组交换---------
     8 2 3 
     9 3 2 
    10 -------成员变量交换---------
    11 a=2 b=3
    12 a=3 b=2
  • 相关阅读:
    第12章学习笔记
    尝试用华为Matepad平板在华为云openEuler做SM系列测试实验
    flex tree xml相关
    asp.net乱码问题
    ArcGIS Server for Flex 资源收集
    asp.net 读写excel
    Geoprocessor 使用
    上传控件
    html页面布局 水平居中 垂直居中
    ArcGIS Engine 代码收集贴
  • 原文地址:https://www.cnblogs.com/zhihaospace/p/12217633.html
Copyright © 2011-2022 走看看