java 编写函数 交换两个基本变量的值
Java编写一个函数交换两个变量的值
Java函数在传递过程中只能够传值,不能传址。这样,函数的参数在函数内部做任何变化就都不会反映到外部调用者来。所以解决之道就是要找到要交换对象的引用。对于普通的值类型,像int或者double这样的可以改传他们的包装类Integer和Double。而对于本来就是引用类型的对象,则需要对他们再包一层。一个好的方法就是将参数列表改成数组,例如void
swap(Object[]); //数字应当只包含两个元素
下面以整数为例介绍三种交换两个值的算法,假设有这样的声明:
void swap(Integer a, Integer b)
方法一:采用临时变量
int temp = a.value;
a.value = b.value;
b.value = temp;
方法二:使用异或
a.value ^= b.value;
b.value ^= a.value;
a.value ^= b.value;
方法三:使用求和和求差
a.value = a.value + b.value;
b.value = a.value - b.value;
a.value = a.value - b.value;
相关文档:
一:理解多线程
多线程是这样一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间互相独立。
线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的其它线程共享一个存储空间,这使得线程间的通信远较进程简单。
......
在JAVA文件中获取该项目的相对路径
1.基本概念的理解
绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:
C:\xyz\test.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个
URL绝对路径。
相对路径:相对与某个基准目录的路径。包含Web的 ......
首先,建3个接口
FTPOperate.java:
public interface FTPOperate
{
public void execute(FTPBean entity);
}
FTPProxy.java:
public interface FTPProxy
{
public void connection();
public abstract void upload();
public abstract void download();
public void setEntity(FTPBe ......
在Firefox 3.6中,当焦点在flash或者java applet对象上时,会出现一个环绕对象的虚线框,当将flash与java applet对象的大小设成100%时,点击对象后页面会出现滚动条,影响显示效果,解决的方法是使用如下的css定义:
:focus {
outline: 0;
}
这样在各个不同的浏览器中显示的效果都能保持一致。 ......
(
1
)
+=
:sum += 1;
相当于
sum = sum + 1;
(
2
)
++ --
:i++ i
加
1, i-- i
减
1, ++
或
—
放在数值后,表示执行运算后加(减)
1
,反正数值前表示执行运算前加(减)
1
(
3
)
?
: :
int n = a<10?1:2
表示如果
a
小于
10
则
n
等于
1
否则等于
2
(
4
......