我从我的一个班级得到了一些非常奇怪的输出,在这里:
package com;
import java.io.File;
import java.io.IOException;
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
public class JavaToJSON {
public static void main(String[] args){
ObjectMapper mapper = new ObjectMapper();
try {
Product product = new Product();
product.setName("TestProduct");
product.setAmount(Double.valueOf("459.99999999999994"));
// Convert product to JSON and write to file
mapper.writeValue(new File("d:\\user.json"), product);
// display to console
System.out.println(product);
} catch (JsonGenerationException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
我这里有一个包含一个分数类对象数组的组类。当一个新的组对象被创建时,它被构造成在数组中放置了分数,并且一切正常。
我试图找到x个最小分数(基于它们的十进制值)并将最小的分数标记为“已丢弃”意味着它们仍将保留在数组中但我们将忽略它们。这就是$ dropped变量在小数类中的含义。我用一个调用smallest()函数
的循环来做这个问题是我收到通知,我正在尝试获取非对象的属性,即$ fractionObj->删除。但是,如果我var_dump($ fractionObj)它告诉我它是一个对象。有没有办法将数组指针推进到数组中的下一个对象而不使用next(),因为我认为这是问题所在。
答案 0 :(得分:0)
我能够用以下解决方案解决。我确信存在更好的方法。能够使用next()进行迭代会非常方便,但我想这并不能直观地与对象一起工作。
<!-- This is a comment -->