无法在基本类型int上调用toString()

Ale*_*lva 10 java string integer

基本上,我正在尝试做的是获取商品ID,并从ini设置价格,基本上就像:itemid:price但是,我不能简单地做item.getId().toString().我正在尝试获取项目我该怎么做才能使它成为一个字符串?

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);
    }
}
Run Code Online (Sandbox Code Playgroud)

那是我的代码,(当然我在item.getId().toString()中有错误,我该怎么做才能将它转换为字符串?

MBy*_*ByD 50

原始类型没有方法,因为它们不是Java中的对象.你应该使用匹配类:

Integer.toString(item.getId());
Run Code Online (Sandbox Code Playgroud)


Ski*_*ead 6

String itemId = Integer.toString(item.getId());
Run Code Online (Sandbox Code Playgroud)