67194:67194 > HELLO JAVA
[导读] ? ? ? ? ? 对于本篇博客,我实则很早之前就想写了。不过,当时没有时间,就拖到今天写了。 ? ? ? ? ? ?对于数值类型的数据,当2个变量进行数据交换时,大家一般会使用第三方变量进行数值


? ? ? ? ? 对于本篇博客,我实则很早之前就想写了。不过,当时没有时间,就拖到今天写了。


? ? ? ? ? ?对于数值类型的数据,当2个变量进行数据交换时,大家一般会使用第三方变量进行数值交换。代码与运行结果如下所示:?


? ? ? ? ? 代码?

	public static void main(String[] args) {
		
		// 使用第3方变量来进行数据交换
		test1();
		
		// 不使用第3方变量进行数据交换:算法方式一
		//test2();
		
		// 不使用第3方变量进行数据交换:算法方式二
		//test3();
		
	}

	public static void test1() {
		
		double a = 3.14, b = 5.28, c = 0.0;
		System.out.println("交换前a、b的值为:");
		System.out.println("a= " + a);
		System.out.println("b= " + b);
		
		c = a;
		a = b;
		b = c;
		
		System.out.println("交换后a、b的值为:");
		System.out.println("a= " + a);
		System.out.println("b= " + b);
		System.out.println("c= " + c);
	}




? ? ? ? ? 运行结果





? ? ? ? ? ? 同时,对于2个数值型数据进行交换时,也可不采用第三方变量的方式来实现。在这里,我自己列出2个小的算法来实现这个功能。对于2个算法之间为何会出现一些精确度数据的差异,我个人也是不懂。如果有知道的网友,可以回复我,告知一下,谢谢。

??算法方式一:

? ? ? ? ? 代码?

	public static void main(String[] args) {
		
		// 使用第3方变量来进行数据交换
		//test1();
		
		// 不使用第3方变量进行数据交换:算法方式一
		test2();
		
		// 不使用第3方变量进行数据交换:算法方式二
		//test3();
		
	}
	public static void test2() {
		
		double a = 3.14, b = 5.28;
		System.out.println("交换前a、b的值为:");
		System.out.println("a= " + a);
		System.out.println("b= " + b);
		
		a = a + b; 
		b = a - b;
		a = a - b;
		
		System.out.println("交换后a、b的值为:");
		System.out.println("a= " + a);
		System.out.println("b= " + b);
		
	}


? ? ? ? ? 运行结果?





??算法方式二:

? ? ? ? ? 代码?

	public static void main(String[] args) {
		
		// 使用第3方变量来进行数据交换
		//test1();
		
		// 不使用第3方变量进行数据交换:算法方式一
		//test2();
		
		// 不使用第3方变量进行数据交换:算法方式二
		test3();
		
	}
	public static void test3() {
		
		double a = 3.14, b = 5.28;
		System.out.println("交换前a、b的值为:");
		System.out.println("a= " + a);
		System.out.println("b= " + b);
		
		a = a - b; 
		b = a + b; 
		a = b - a;
		
		System.out.println("交换后a、b的值为:");
		System.out.println("a= " + a);
		System.out.println("b= " + b);
		
	}


? ? ? ? ? 运行结果?






换一批

延伸阅读

[工业控制技术文库] 实现触摸屏与PLC之间中短距离无线数据交换设计

实现触摸屏与PLC之间中短距离无线数据交换设计

一、产品优势  ? ? 1.485/232数据中短距离无线传输,无需插卡,没有运行费用 ? 2.由于采用标准modbus RTU协议,所以对PLC编程时不需要编写通讯程序。 ? 3.安全,可靠,稳定的433MH...

关键字: 触摸屏 plc 数据交换

[嵌入式资讯] 从 Android 到 Java

从 Android 到 Java

Alimei概况:Android和Java开发在技术堆栈上有何区别? 思考和解决问题时会发生什么? 本文分享了从Android开发到Java应用程序开发的Ali技术专家的经验,分析了两者之间的差异以及一些关于动力学,兼容性,内存管理和...

关键字: Android api java

[科技喵] Java 用户福利,BellSoft 与 VMware 合作改进 OpenJDK

Java 用户福利,BellSoft 与 VMware 合作改进 OpenJDK

在过去的几年中,OpenJDK 的使用率显着增加,尤其在甲骨文于 2019 年决定更改其 Java 许可模式,从提供免费的 Java 更新转变为要求付费订阅以后,这种情况尤为明显。Snyk 于 2020 年进行的一项调查显示,只有 34%...

关键字: vmware java openjdk

[科技前线] 谷歌 Cloud Functions 添加对 Java 11 支撑

谷歌 Cloud Functions 添加对 Java 11 支撑

GOOGLE宣布在其无服务器计算平台 Cloud Functions 上支撑 Java 11。图片来源:SDTimesGuillaume Laforge 在帖子中指出,“通过适用于 谷歌 Cloud Functions 的新 Java 11...

关键字: GOOGLE 11 java

[科技喵] 那些想要替代 C 与 Java 们的后浪,如今混得怎么样?

那些想要替代 C 与 Java 们的后浪,如今混得怎么样?

前段时间,B 站推出的青年节演讲视频在朋友圈刷屏,看着“后浪”们丰富多彩的生活,同事们纷纷自嘲自己就是被拍在沙滩上的那一个,被生活疯狂蹂躏。然而在编程语言界,“后浪”们掀起的波澜则十分有限。与近年来陆续涌现的新兴编程语言相比,那些出道即巅峰...

关键字: C语言 java 编程语言

HELLO JAVA

541 篇文章

关注

发布文章

技术子站

更多

论坛活动

  • 加入Vicor,让机器人供电系统设计更有“料”
    加入Vicor,让机器人供电系统设计更有“料”
  • ADI视频课堂精品上新-观看有礼
  • 【20周年庆】21ic下载站VIP五折起,技术资料免积分下载!
  • (有奖活动)贸泽电子设计“新”头好
更多

资料下载

  • 《嵌入式LINUX基础教程》中文 第2版 (2 of 3)
  • 《嵌入式LINUX基础教程》中文 第2版 (3of 3)
  • 《嵌入式LINUX基础教程》中文 第2版 (1 of 3)
  • ST-Link原理图和固件
  • Linux下C语言编程入门教程
  • 基于51单片机数字音乐盒的设计
  • Linux Kernel Developments 内核开发
  • Multisim2001电路设计及仿真教材
  • 基于51系列单片机控制步进电机调速闭环系统设计
  • 新概念模拟电路全集
关闭
XML 地图 | Sitemap 地图