java - 错误:int 无法取消引用 java(重复)
问题描述
我正在编写一个简单的 Java 程序来进行温度转换,并且在第 8 行(我已在下面的代码中标记)上不断收到一个错误,即无法取消引用 int。我不确定这到底是什么意思,或者如何解决它,这里有相同错误的其他问题无助于为我的错误找到解决方案。问题是:具有格式:
?<int><int><int><int>
我必须解决?在这种情况下,但考虑到第二个向量乘以 3,第三个乘以 1,第四个乘以 0,最后一个向量被减去。
class LeaderBoard{
public static void main(String[] args){
String errorFormat = "Format error: You must write 4 integers and one symbol ?";
int[] list = null;
int position = -1, j = 0;
if(args.length!=5){
System.err.println(errorFormat);
}else{
try {
list = new int[4];
for(int i=0;i<args.length;i++){
if(position== -1 && args[i].equals("?")){
position = i;
}else if((position!= -1 && args[i].equals("?")) || (j==4)){
//Hay mas de un ? o no hay ?
System.err.println(errorFormat);
System.exit(1);
}else{
list[j] = Integer.parseInt(args[i]);
j++;
}
}
} catch (NumberFormatException e) {
System.err.println(errorFormat);
System.exit(1);
}
System.out.println("The missing value is "+calculate(position,list));
}
}
static int calculate(int position, int[] list){
position=0;
for (int i=0; i<list.length; i++){
if(list[1]==0){
position=list[1]*3+list[2]*1+list[3]*0+list[4]*(-1);
}
}
return 0;
}}
当我执行程序时,我总是得到值 0,尽管我改变了输入值。
有人可以帮助我吗?
解决方案
list[1]
是原始类型。您不能在其上调用方法。因此,当您尝试调用equal
(您的意思是equals()
?)时,您会收到错误消息。
除此之外,您的逻辑没有意义。您正在尝试将int
aString
与 a 进行比较,然后将布尔结果与另一个进行比较int
推荐阅读
- google-play - 当我从我的应用程序中删除 Beta 测试程序时,现有的 Beta 测试人员会怎样?
- python - 在循环中更改熊猫数据框中列的顺序
- android - 如何使矢量标志更小并适合图标
- c# - 从 MDI 父窗体控制 MDI 子窗体上的记录导航
- .net - SAP RFC 与 VBA 的连接 - 错误的变体类型
- php - 违反完整性约束:1048 列
- flutter - 有没有办法将 ListView 堆叠在 Container 之上,但在它之下?
- html - 如何使视频播放器适合其内容?
- reactjs - 如果类定义了接口类型,如何仅传递选择性道具
- java - 无法从 Spring Boot 可执行 jar 访问部署在其他服务器上的休息点