小编and*_*.hu的帖子

Java - 扩展了超变量a为0的原因

请看这段代码:

class Sup {
    int a = 8;

    public void printA() {
        System.out.println(a);
    }

    Sup() {
        printA();
    }
}

public class Sub extends Sup {
    int a = 9;

    @Override
    public void printA() {
        System.out.println(a);
    }

    Sub() {
        printA();
    }

    public static void main(String[] args) {
        Sub sub = new Sub();
    }
}
Run Code Online (Sandbox Code Playgroud)

结果:控制台打印: 0 9
我知道子类将首先调用超类constructor
但是,为什么0 9 不是8 9

java extend

8
推荐指数
1
解决办法
95
查看次数

为什么Gson将整数解析为双精度?

一个复杂的json字符串,我想将其转换为map,我有一个问题.

请看这个简单的测试:

public class Test {

    @SuppressWarnings("serial")
    public static void main(String[] args) {
        Map<String, Object> hashMap = new HashMap<String, Object>();
        hashMap.put("data", "{\"rowNum\":0,\"colNum\":2,\"text\":\"math\"}");

        Map<String,Object> dataMap = JsonUtil.getGson().fromJson(
                hashMap.get("data").toString(),new TypeToken<Map<String,Object>>() {}.getType());

        System.out.println(dataMap.toString());

    }
}
Run Code Online (Sandbox Code Playgroud)

结果:
控制台打印:{rowNum=0.0, colNum=2.0, text=math}
Int转换为Double;
为什么gson会更改类型以及如何修复它?

java json gson

8
推荐指数
1
解决办法
3718
查看次数

标签 统计

java ×2

extend ×1

gson ×1

json ×1