引用传递,传递的是内存地址,修改后会改变内存地址对应储存的值。
用数组来举例就最清楚了,例如我们定义一个数组a[]={1,2}
那么a[0]=1,a[1]=2。
如果我们把数组a里的元素值作为参数传递,实际上只是进行了值传递,对数组本身没有影响
如果我们把 数组a的指针作为参数传递,那么假如处理的函数就可以直接修改数组a里的值。
代码实例:(只是写个大概的逻辑,语法可能有错误)
main()
{
int a[]={1,2}
test(a)
printf(a[0]) //此处打印的值是3, 这就是引用传递。
}
public void test(int b[])
{
b[0]=3
}
可以利用form表单提交获取上一个页面的值
例:form表单提交传值及取值
发请求页面
<form style="display: none" method="post"id="infoDetailsHyperlink" name="input"
action="<%=request.getContextPath()%>/view/basicmanage/reportTemplet/positionPeopleConfig.jsp">
<input name="infoId" id="infoId">
<input name="operationType" id="operationType">
<input name="copyTempletIdConfigPeople" id="copyTempletIdConfigPeople">
</form>
发请求页面,js中发送请求
$("#infoId").val($("#lastStepTempletId").val())$("#operationType").val($("#operationTypeIdLastStep").val())
$("#infoDetailsHyperlink").submit()
接收页面
<input id="infoId" style="display: none" value=<%=request.getParameter("infoId")%>><input id="operationType" style="display: none" value=<%=request.getParameter("operationType")%>>
<input id="copyTempletIdConfigPeople" style="display: none" value=<%=request.getParameter("copyTempletIdConfigPeople")%>>
<script>
<%request.setCharacterEncoding("utf-8")%> 解决传值时中文乱码问题
</script>