Ne peut pas s'appeler toString() sur le type primitif int
Fondamentalement, ce que je suis en train de faire, est d'obtenir l'ID de l'élément, et de fixer un prix à partir d'un fichier ini, fondamentalement comme: itemid:prix
mais, je ne peux pas simplement faire de l'élément.getId().toString().
Je vais essayer d'obtenir de l'élément de
Que puis-je faire pour faire une chaîne de caractères?
public static void getBuyPrice(Item item) {
try {
String itemId = item.getId().toString();
BufferedReader br = new BufferedReader(new FileReader(new File(
"./data/prices.ini")));
String line;
while ((line = br.readLine()) != null) {
if (line.equals(itemId)) {
String[] split = line.split(":");
item.getDefinitions().setValue(Integer.parseInt(split[1]));
}
}
br.close();
} catch (Throwable e) {
System.err.println(e);
}
}
C'est mon code, (bien sûr, j'ai l'erreur au point.getId().toString()), Que puis-je faire pour convertir une chaîne de caractères?
Chaîne itemID = ""+item.getId();
Désolé, ce n'est pas une réponse complète (parce que je n'ai pas assez de privilège de commentaire), mais avez-vous écrire la méthode toString() pour l'ID dans la classe de l'Élément ? ou simplement l'utiliser Entier.toString(item.getId() si l'ID est un type primitif.
Désolé, ce n'est pas une réponse complète (parce que je n'ai pas assez de privilège de commentaire), mais avez-vous écrire la méthode toString() pour l'ID dans la classe de l'Élément ? ou simplement l'utiliser Entier.toString(item.getId() si l'ID est un type primitif.
OriginalL'auteur Alex DaSilva | 2012-04-01
Vous devez vous connecter pour publier un commentaire.
Types primitifs n'ont pas de méthodes, car ils ne sont pas des objets en Java. Vous devez utiliser le correspondant de la classe:
OriginalL'auteur MByD
vous me battre.
OriginalL'auteur Skip Head
OriginalL'auteur QuantumMechanic
Types primitifs (int, double, octet, etc..) ne peuvent pas disposer de méthodes.
Afin d'utiliser cette :
OriginalL'auteur Burhan ARAS
Un autre moyen simple est juste de dire
"" + myInt
, en supposant myInt est attribué.Donc, essayez:
Bien sûr, vous pouvez enrouler la ligne dans un try/catch dans le cas où il y a des erreurs d'analyse ou de diviser[1] est null, index out of range, etc.
Sinon, la méthode
Integer.valueOf(str)
retourne un objet Integer (par opposition à une primitive) qui vous permettra d'appeler directement le .fonction toString ().J'aime particulièrement .valueOf() car il met en cache de nombreux Entier des objets.
OriginalL'auteur E.S.
Mieux:
OriginalL'auteur Web Sink