![](/img/trans.png)
[英]BlueJ Error: Incompatible types: int cannot be converted to java.lang.String (Ticket Machine Simulation)
[英]BlueJ Error: “Incompatible types: int cannot be converted java.lang.String” AND “Incompatible types: java.lang.String cannot be converted to int”
我對編碼很陌生,在嘗試了多種解決方案后,我想出了,我仍然無法弄清楚為什么我所做的是錯誤的。 這是我的完整代碼:
public class Student {
private String name;
private String grade;
private String gender;
private int number;
public Student( String name, String grade, String gender, int number ) {
this.name = name;
this.grade = grade;
this.gender = gender;
this.number = number;
}
public String getName() {
return name;
}
public void setName( String name ) {
this.name = name;
}
public String getGrade() {
return grade;
}
public void setGrade( String grade ) {
this.grade = grade;
}
public String getGender() {
return gender;
}
public void setGender( String gender ) {
this.gender = gender;
}
public String getNumber() {
return number;
}
public void setNumber( String number ) {
this.number = number;
}
}
正如您可能看到的那樣,我在嘗試不僅能夠在第一次使用對象時添加新名稱/等級/性別/ int編號,而且還嘗試使用方法。
我得到的問題似乎是由這部分引起的:
public String getNumber() {
return number;
}
public void setNumber( String number ) {
this.number = number;
}
當我將鼠標懸停在第二行的“數字”上時,BlueJ會出現以下錯誤: “不兼容的類型:int無法轉換為java.lang.String” 。
雖然當我將鼠標懸停在第五行的“數字”上時,BlueJ會給出錯誤: “不兼容的類型:java.lang.String無法轉換為int” 。
我已經嘗試在這個網站上搜索類似的問題,但是沒有找到任何他們試圖通過使用方法來填充int號的地方。
String和int是兩種不同的類型,與Integer和int相比,沒有編譯器魔術可以自動將其轉換為另一種。
但是有各種幫助方法可以解決這個問題,例如:
String asString = Integer.toString(123);
將int
轉換為String
; 和
int number = Integer.parseInt("123");
反過來說。
而且只是為了記錄:你可以寫的事實
Integer integerObject = 5;
被稱為自動拳擊 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.