老师,为啥我for循环里面使用return时,返回空白页面,不显示查询结果呢?
package com.imooc.servlet;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class SearchGoodsByIdServlet
*/
@WebServlet("/search")
public class SearchGoodsByIdServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public SearchGoodsByIdServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
ServletContext context=request.getServletContext();
String id=request.getParameter("id");
Goods result=null;
List<Goods> list=(List)context.getAttribute("goodsList");
for(Goods goods:list) {
if((goods.getGoodsId().toString()).equals(id)) {
result=goods;
break;
//return;
}
}
context.setAttribute("result",result);
request.getRequestDispatcher("searchById.jsp").forward(request,response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
使用break时 就可以显示出正常的查询结果界面,,为啥呢?
16
收起
正在回答
2回答
抱歉同学,return有两种用法,一种是返回方法指定类型值,另一种是用于结束方法的标志。这里是第二种用法,用于结束该方法。
祝:学习愉快~
java工程师2020版
- 参与学习 人
- 提交作业 9410 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星