java - Java 不能应用于给定类型的字符串和整数
问题描述
我在编译时遇到了这个错误,我不确定为什么会得到它或如何修复它。
错误是:
RecordEvents3.java:16: error: constructor EventInformation in class EventInformation cannot be applied to given types;
EventInformation e = new EventInformation("10:53",45);
^
required: no arguments
found: String,int
reason: actual and formal argument lists differ in length
1 error
class RecordEvents3 {
public static void main (String args[]) {
Recorder r1 = new Recorder (100,100,"Wombat Detection");
r1.recordEvent("10:53");
r1.recordEvent("10:59");
r1.recordEvent("11:05");
r1.recordEvent("12:59");
r1.recordEvent("13:50");
r1.recordEvent("14:06");
r1.printEvents();
EventInformation e = new EventInformation("10:53",45);
System.out.println("Event recorded at " + e.eventTime +
", datum = " + e.eventDatum);
}
}
class EventInformation {
public String eventTime;
public int eventDatum;
}
class Recorder {
int xPos,yPos;
String eventType;
String [] event = new String [6];
final int EVENT_Max = 10;
int xevent = 0;
Recorder (int xPos, int yPos, String eventType ) {
this.xPos = xPos;
this.yPos = yPos ;
this.eventType = eventType;
}
void recordEvent (String eventTime ) {
event [xevent] = eventTime;
xevent++;
if (xevent > 5){
System.out.println ("Event log overflow - terminating");
System.exit(1);
}
}
void printEvents(){
System.out.println ("Record of " + eventType +
" events at [" + xPos + "," + yPos + "] " );
int index=0;
for (String current: event) {
if (xevent > 5){
String ss=String.format("Event number %s was recorded at ",index);
System.out.println(ss + current);
index++;
}
}
}
}
解决方案
您的 EventInformation 类需要一个构造函数,例如
public EventInformation(String eventTime, int eventDatum) {
this.eventTime = eventTime;
this.eventDatum = eventDatum;
}
看起来您期望 Java 构造函数的行为类似于 Typescript 构造函数。初始化字段时总是需要显式构造函数。
推荐阅读
- javascript - 在 React.Js 中单击按钮时启动计时器
- php - 在我安装完 PHP、phpMyAdmin 和 MySQL 之后,这个“Requested Operation has Failed”错误会成为后面的问题吗?
- c# - arcore 获取光源位置
- mysql - 选择按消费金额排序的前 10 名用户
- mysql - COUNT DISTINCT on multiple columns with Conditions
- jquery - 与jquery在同一类中显示数据相同的数据属性名称
- javascript - webpack 包中的导出顺序
- python - 如何通过在数据库中的两个表中使用卷号提及来获取所有详细信息并在 Tkinter GUI 中显示?
- angular - 从 API 返回 ObjectResult 并以角度使用状态码
- reactjs - create-react-app ReferenceError: jQuery 未定义