代码之家  ›  专栏  ›  技术社区  ›  J.D

如何停止模型类中的自动排序字段?[复制品]

  •  0
  • J.D  · 技术社区  · 6 年前

    这个问题已经有了答案:

    我创建了一个模型类(这里只显示构造函数)

    public PieceModel(int position, int piece_id) {
        this.position = position;
        this.piece_id = piece_id;
    }
    

    然后添加一些数据

    list.add(new PieceModel(1, 100));
    list.add(new PieceModel(2, 300));
    list.add(new PieceModel(3, 600));
    

    然后我把列表转换成字符串,它会像这样打印

    [{"piece_id":100,"position":1},{"piece_id":300,"position":2},{"piece_id":600,"position":3}]
    

    但我需要这样

    [{"position":1,"piece_id":100},{"position":2,"piece_id":200},{"position":3,"piece_id":300}]
    

    请给我一些建议……

    1 回复  |  直到 6 年前
        1
  •  4
  •   nhp    6 年前

    像这样?重写 toString 重新安排酒店?

    static class PieceModel {
        private int position;
        private int piece_id;
    
        public PieceModel(int position, int piece_id) {
            this.position = position;
            this.piece_id = piece_id;
        }
    
        @Override
        public String toString() {
            return "{" +
                    "position=" + position +
                    ", piece_id=" + piece_id +
                    '}';
        }
    }
    
    public static void main(String[] args) {
        List<PieceModel> list = new ArrayList<>();
        list.add(new PieceModel(1, 100));
        list.add(new PieceModel(2, 300));
        list.add(new PieceModel(3, 600));
        System.out.print(list.toString());
    }
    

    结果:

    [{"position":1,"piece_id":100},{"position":2,"piece_id":200},{"position":3,"piece_id":300}]