Ⅰ java中有地址参数传递吗
你需要明白,地址参数传递的真实含义,然后就明白了,只拿概念去套是没有意义的。套概念只会今天问 java 有没有,明天问其它的语言有没有。
java 的参数传递不同于按值传递,也不完全同于按地址传递,因为这需要区分基本类型和抽象类型。
名义上 Java 都是按值传递,但对于抽象类型来说又有引用传递的效果。指向原始对象,函数调用后的效果也导致了目标对象被改动,之后持有指向目标对象的符号的变量就跟着有了变化,这点就像引用传递。
所以 Java 的核心人士都说 Java 只有按值传递。但理解了 Java 的引用之后就明白,对于抽象类型的对象,这其实也是引用传递。所以在 Java 中没直接与 C++ 地址传递。
Java API 中有些类型的是 immutable,就是说它的状态在创建之后不再更改,所以修改需要创建一个全新的对象,比如 String, Integer 之类的,所以 str + "sest" 其实并未改变 str 对象本身,所以需要用 str = str + "test" 来接收改变之后的结果,它是一个新的 String 对象,不同于 str + "test" 调用之前的那个 str。
Ⅱ java URL 添加参数的几种简单方式
主要有三种方式,先给大家第一种managed-bean,必须 scope设置为request
<managed-bean>
<managed-bean-name>nameBean</managed-bean-name>
<managed-bean-class>demo.NameBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>userName</property-name>
<value>#param.name</value>
</managed-property>
...
....
</managed-bean>
第二种方式:缺点是无法往后台传数据,当然你用javascript做一下动作也可以
<h:inputHidden id="userName" value="#{nameBean.userName}"/>
第三种方式,是直接在bean中获得,我认为这种应该是最实用、保险的方式。
public static String getRequestParameter(String name) {
return (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(name);
}
Ⅲ java怎样获取url参数
如果是javaweb 项目,那么非常简单,直接调用 HttpServletRequest 对象的 .getParamter("参数名称") 方法即可得到。
如果是普通java 项目:
/**
* 获取网址的指定参数值
*
* @param url
* 网址
* @param parameter
* 参数名称
* @author cevencheng
* @return
*/
public static String getParameter(String url, String parameter, String defaultValue) {
try {
final String charset = "utf-8";
url = URLDecoder.decode(url, charset);
if (url.indexOf('?') != -1) {
final String contents = url.substring(url.indexOf('?') + 1);
HashMap<String, String> map = new HashMap<String, String>();
String[] keyValues = contents.split("&");
for (int i = 0; i < keyValues.length; i++) {
String key = keyValues[i].substring(0, keyValues[i].indexOf("="));
String value = keyValues[i].substring(keyValues[i].indexOf("=") + 1);
if (key.equals(parameter)) {
if (value == null || "".equals(value.trim())) {
return defaultValue;
}
return value;
}
map.put(key, value);
}
}
return null;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
Ⅳ java怎么获取url上的参数
request.getParameter("xxx");