Golang交换两个变量

迷南。 2023-01-16 06:20 41阅读 0赞
  1. // 使用第三变量交换a,b值
  2. func swap(a *int, b *int) {
  3. tem := *a
  4. *a = *b
  5. *b = tem
  6. return
  7. }
  8. // 使用第三变量交换a,b值:go 直接交换值
  9. func swapTwo(a *int, b *int) {
  10. *a, *b = *b, *a
  11. }
  12. // 不使用第三变量交换a,b值:直接返回
  13. func swapReturn(a int, b int) (int, int) {
  14. return b, a
  15. }
  16. // 不使用第三变量交换a,b值:数学运算
  17. func swapThree(a *int, b *int) {
  18. *a = *a + *b
  19. *b = *a - *b
  20. *a = *a - *b
  21. }
  22. // 不使用第三变量交换a,b值:位异或运算
  23. func swapFour(a *int, b *int) {
  24. *a = *a ^ *b
  25. *b = *a ^ *b
  26. *a = *a ^ *b
  27. }

发表评论

表情:
评论列表 (有 0 条评论,41人围观)

还没有评论,来说两句吧...

相关阅读

    相关 python中交换变量

    之前有段时间想用python写个交换两个变量的值的函数,我们知道在C++中是传入两个变量的指针或者引用,但是python中并没有指针或者引用的概念,而且资源回收全部由pytho