java处理mysql里面字段的空值
2016-06-10 16:45
561 查看
package mytest; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub String aString=new String(""); String bString=new String(""); String cString=null; String dString=""; String eString=""; System.out.println("1xxxxx"+String.valueOf(aString=="")); System.out.println("2xxxxx"+String.valueOf(aString==bString)); System.out.println("3xxxxx"+String.valueOf(aString==cString)); System.out.println("4xxxxx"+String.valueOf(aString.equals(""))); System.out.println("5xxxxx"+String.valueOf((aString.equals(cString)))); System.out.println("6xxxxx"+String.valueOf(aString.equals(bString))); System.out.println("6xxxxx"+String.valueOf(dString==eString)); } }
首先要知道java里面的空字符串如果是静态字符串的话,也就是使用String a=“”;那么这样指向的其实都是同一个对象。而==是用来判断对象的,equals用来判断值,所以上面的结果会返回:
1xxxxxfalse
2xxxxxfalse
3xxxxxfalse
4xxxxxtrue
5xxxxxfalse
6xxxxxtrue
6xxxxxtrue
现在回到题目了,判断mysql返回为空的字段怎么判断,开始的时候代码是这么写的:
String keywords="";
keywords=result_clusterRate.get(i)[3];
if(keywords==null||keywords==""){
keywords="其他";
//System.out.println(cluster+":"+keywords);
}
这里的resultRate.get函数在空字段的时候会返回空字符串(而不是null),但是他实际上相当于是new了一个空字符串,所以这么写是错的。
判断mysql返回的字段是否为空,还是应该使用equals方法,或者使用keywords.length()<=0的方式。
相关文章推荐
- maven+springMVC+mybatis+junit详细搭建过程
- 浅谈spring容器中bean的初始化
- 《Java程序设计》课程实验指导书程序代码(答案)(实验七)
- Spring——Eclipse上安装springsource-tool-suite与jar包详解
- [javaSE] IO流(装饰设计模式)
- javax.faces.component.html.HtmlInputText.getOnfocusout()Ljava/lang/String;
- javabean
- 【Java学习-J.160601.0.20】Servlet 基础三 dao的封装
- spring开发 MethodInvokingFactoryBean的学习
- Java POI读取Excel 2003/2007/2010例子
- Spring 的Helloworld
- Eclipse编写jsp文件连接Mysql数据库的安装配置指南
- ubuntu14.04中安装jdk
- 【Java学习-J.160601.0.20】Servlet 基础二
- spring引入properties文件,并在controller等层获得引入文件中属性的值
- 解决struts 启动过程中出现的 Unable to load configuration错误 3ff8
- Java常用排序算法之堆排序
- Java多线程
- Spring Mvc那点事---(13)Spring Mvc之mybatis多表联合查询
- Java设计模式之抽象工厂模式