java判断字符串双引号中是否有值

{"name":"","position":"","info":"","nick":""}
如这样的字符串,要怎么判断他中间是没有值的

引入hutool和gson(用于解析json数据)

 <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-all</artifactId>
        <version>5.3.0</version>
</dependency>
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.7</version>
</dependency>
public class Entity{
  private String name;
  private String position;
  private String nick;
  private String info;
  //getter setter
}

public class ElevenTest{
  public static void main(String[] args){
    String str = "{\"name\":\"\",\"position\":\"\",\"info\":\"\",\"nick\":\"\"}";
    Entity entity = new Gson().fromJson(str,Entity.class);
    if(StrUtil.isBlank(entity.getName())){
      System.out.println("name属性为空");
    }
    //其他属性同上
  }


}

==null或者equals("");

解析json最标准的啊

使用commons-lang3的工具类StringUtils的isNotBlank方法,只要是空(""或null)都能判断出来,这个就是需要引commons-lang3这个依赖

转为JSONObject,或者Map,获取Values,进行判空操作

判断xx字符串是否有值,xx==null && ("").equals(xx) 就可以了。当然也可以借助 ommons-lang的工具类StringUtils。
不过看题目感觉你问非所问。如果你是想根据 属性是否全部为空来判断对象是否为空,那么 在属性已知且不多的情况下 一个一个判断就行,属性多或未知的情况下 通过反射来获取所有属性并判断是否为空

你就直接"".equals(name)如果为true就没有值