java交换两个参数值的四种方法
第一种:添加中间变量,算是最经典最简易的一种了。
//添加一个中间变量
int x = 1, y = 2;
int z;
z = x;x = y;y = z;
System.out.println(x+","+y);
虽说是最容易想到的一种,但是不建议使用,原因无他,太low。
第二种,通过加减实现。
//加减
x = 1;y = 2;
x = x + y;
y = x - y;
x = x - y;
System.out.println(x+","+y);
第三种,异或,比较合理却很少见的一种。
//异或
x = 1; y = 2;
x = x ^ y;
y = x ^ y;
x = x ^ y;
System.out.println(x+","+y);
第四种,通过对象引用交换两个参数值
package cn.tedu.demo;
import java.util.Arrays;
//通过对象引用交换两个参数值
public class Demo14 {
private Object num; public Demo14(Object num) {
super();
this.num = num;
} public Object getNum() {
return num;
} public void setNum(Object num) {
this.num = num;
} public static void test1(Demo14 a,Demo14 b){
Object nums = a.getNum();
a.setNum(b.getNum());
b.setNum(nums);
System.out.println(a.getNum()+","+b.getNum());
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Demo14 a = new Demo14(1);
Demo14 b = new Demo14(2);
test1(a,b); } }
java交换两个参数值的四种方法的更多相关文章
- JAVA 保留两位小数的四种方法
import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; publiccl ...
- java交换两个值的三种方法 经典
1.中间变量(在开发中常用) int c=a; a=b; b=c; System.out.println("a的值: "+a+" b的值: "+b); 2.按位 ...
- 关于fmri数据分析的两大类,四种方法
关于fmri数据分析的两大类,四种方法: 数据驱动: tca:其实这种方法,主要是提取时间维的特征.如果用它来进行数据的分析,则必须要利用其他的数据方法,比如结合ICA. ica:作为pca的一般化实 ...
- Java多线程——之一创建线程的四种方法
1.实现Runnable接口,重载run(),无返回值 package thread; public class ThreadRunnable implements Runnable { public ...
- Java中遍历Map集合的四种方法
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...
- 【转载并整理】JAVA解析或生成xml的四种方法
参考文章 1:http://blog.csdn.net/clemontine/article/details/53011362 2:http://www.jb51.net/article/98456. ...
- java 保留小数点后指定位数四种方法
1 package com.itheima_01; 2 3 import java.math.BigDecimal; 4 import java.text.DecimalFormat; 5 impor ...
- Double值保留两位小数的四种方法
public class DoubleTest { //保留两位小数第三位如果大于4会进一位(四舍五入) double f = 6.23556; /** *使用精确小数BigDecimal */ pu ...
- Java 中转换为String类型的四种方法
1. 使用 String 的构造方法,用于 byte[], char[], StringBuffer, StringBuilder 类型 2. 使用 String 的静态方法 valueOf() 推荐 ...
随机推荐
- [JAVA]使用字节流拷贝文件
import java.io.*; /** * @Description: * @projectName:JavaTest * @see:PACKAGE_NAME * @author:郑晓龙 * @c ...
- 数据可视化之powerBI基础(十四)Power BI中创建联动切片器
https://zhuanlan.zhihu.com/p/67564062 进行数据分析时,每个分析维度并不总是独立的,比如省份是一个维度,城市也是一个维度,而这两个维度之间是有逻辑关系的,那么在进行 ...
- 对掌机游戏Pokemon的一部分系统的拆解流程图
整体系统拆解 POKEMON系统拆解 属性.技能.进化形态 属性提升系统 种族值说明: 所有Pokemon都拥有自己的种族的种族值,且固定(例如:小火龙:309, 皮卡丘: 320) 种族值是各项属性 ...
- 使用MapReduce运行WordCount案例
@ 目录 一.准备数据 二.MR的编程规范 三.编程步骤 四.编写程序 Mapper程序解读 一.准备数据 注意:准备的数据的格式必须是文本,每个单词之间使用制表符分割.编码必须是utf-8无bom ...
- Ethical Hacking - NETWORK PENETRATION TESTING(17)
MITM - bypassing HTTPS Most websites use https in their login pages, this means that these pages are ...
- oracle 在物理机上添加磁盘操作
物理机上添加磁盘操作 注意:1)物理机上添加磁盘操作,不涉及到start_udev的动作.2)磁盘分区的操作,需要谨慎进行,核准无误后再操作. (1)查看磁盘名称命名 # su - grid$ sql ...
- 使用recv函数和send函数的技巧
一些述说 recv函数用于socket通信中接收消息,接口定义如下: int recv(SOCKET s, char *buf, int len, int flags) 参数一:指定接收端套接字描述符 ...
- 题解 洛谷 P6640 【[BJOI2020] 封印】
设\(lenth_i\)为\(s\)在\(i\)位置的前缀的后缀为\(t\)的一个子串的最长长度,即为从\(i\)位置开始往前和\(t\)的最长公共子串长度.其可以通过对\(t\)建后缀自动机,然后让 ...
- 将数组内的元素循环左移P个位置
问题可以转化为将数组内前 n 个元素进行逆置,再将后(n-p)个元素逆置,最后将整个数组逆置 void Reverse(int A[],int pos1,int pos2){ // 将A[pos1]与 ...
- 关于简单的数据双向绑定原理,defineProperty 和Proxy演示
双向绑定,也就是说js中的数据传到页面,页面中的内容到js,实现同步更新,简单的演示可以直接复制下放HTML代码运行. 在这个例子中,我们使用defineProperty ,Object.define ...