这是一个问题:编写一个交换两个变量的方法.这两个变量应该是原始的.它不需要是通用的,例如两个int变量.有办法吗?!
如何在java中通过引用传递原始类型?例如,如何将int传递给可修改的方法?
如果没有我们可以通过引用传递的方法,如何在java中创建交换函数?有人可以给我一个代码吗?
swap(int a, int b)
{
int temp = a;
a = b;
b = temp;
}
Run Code Online (Sandbox Code Playgroud)
但是由于java通过值传递,因此不会反映出这种变化
是否有更好的方法在kotlin中编写通用交换函数,而不是如何在Java中编写基本交换函数中描述的java方式.
是否有任何kotlin语言功能可以使通用交换功能更简洁直观?
可能重复:
是否可以在Java中编写swap方法?
给定两个值x和y,我想将它们传递给另一个函数,交换它们的值并查看结果.这在Java中可行吗?
我试图在Java中交换两个字符串.我从未真正理解"字符串是不可变的".我在理论上理解它,但我在实践中从未遇到过它.
此外,由于String是Java中的对象而不是基本类型,我不明白为什么以下代码两次打印相同的结果,而不是交换单词!
public static void main(String[] args)
{
String s1 = "Hello";
String s2 = "World";
System.out.println(s1 + " " + s2);
Swap(s1, s2);
System.out.println(s1 + " " + s2);
}
public static void Swap(String s1, String s2)
{
String temp = s1;
s1 = s2;
s2 = temp;
}
Run Code Online (Sandbox Code Playgroud)
我想要它打印
Hello World
World Hello
Run Code Online (Sandbox Code Playgroud)
但它是印刷品
Hello World
Hello World
Run Code Online (Sandbox Code Playgroud)
我认为s1和s2是引用,因此引用应该交换,新引用应分别指向另一个引用.我哪里错了?
每次我想交换两个值时我都要使用临时来做实际的交换.为什么Java不在任何类中为我们提供设施方法来简单地交换两个变量的值?
我正在尝试在java中创建一个交换函数,但为什么这不起作用?
void swap(int a, int b) {
int temp = a;
a = b;
b = temp;
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试为Android GSM构建一个litle gam.我有很多单位,所有单位都有目的地.为了计算目的地我正在使用一个名为CalDes的函数.此功能CalDes正在计算我单位的速度.所以我发送了一些我必须编辑的变量并再次使用它们.为此,我必须参考这些变量.这是一个简单的C++如何在java中做到这一点?
void swap(SomeType& arg1, Sometype& arg2) {
SomeType temp = arg1;
arg1 = arg2;
arg2 = temp;
}
...
SomeType var1 = ...; // value "A"
SomeType var2 = ...; // value "B"
swap(var1, var2); // swaps their values!
Run Code Online (Sandbox Code Playgroud)