2

标记“;”的语法错误,。预计在ArrayList<String> data = new ArrayList<String>;

<%@page import="java.util.*"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@taglib prefix="kendo" uri="http://www.kendoui.com/jsp/tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<link href="resources/styles/kendo.common.min.css" rel="stylesheet"
    type="text/css" />
<link href="resources/styles/kendo.default.min.css" rel="stylesheet"
    type="text/css" />

<script src="resources/js/jquery.min.js"></script>
<script src="resources/js/kendo.web.min.js"></script>


</head>


<body>
    <%
        ArrayList<String> data = new ArrayList<String>;
        data.add("a");
        data.add("b");
        data.add("c");
    %>
    <kendo:datePicker name="datePicker"></kendo:datePicker>
    <kendo:calendar name="calendar"></kendo:calendar>

    <kendo:dropDownList name="dropdownlist">
        <kendo:dataSource data="<%=data%>"></kendo:dataSource>
    </kendo:dropDownList>
</body>
</html>

当我尝试这段代码时。Eclipse 中出现错误“令牌“;”,. 预期的语法错误。

ArrayList<String> data = new ArrayList<String>;
4

3 回答 3

1

当然,此错误消息有点误导,因为您真正缺少的是构造函数参数列表的括号。

ArrayList<String> data = new ArrayList<String>();

我希望它有所帮助。

于 2013-06-10T05:55:06.690 回答
1

使用时new,您正在调用构造函数。正如您所做的那样,构造函数不仅仅是类的名称。它就像一个方法,因此需要参数。

的默认构造函数ArrayList不需要参数,因此可以称为空(())。

您的代码应该是:

ArrayList<String> data = new ArrayList<String>();
//                                            ^^--- added () here
于 2013-06-10T05:40:16.240 回答
0

是的,错误本身只说“嘿,你错过了一些东西”,如果你想添加一些列表,ArrayList你应该使用括号将参数列表传递给构造函数。

ArrayList<String> data = new ArrayList<String>(); 

这里的空括号表示我们正在传递一个空的参数列表。

于 2014-02-20T09:20:06.800 回答