在Long类型数据转化成String类型数据时,要先对Long类型数据做是否为null判断,否则会引发异常包错!

 

       不含值的Long类型变量 testA 给 Long类型变量 testB 直接赋值,不会引发异常。  不含值的 String类型变量 strA 给 String类型变量 strB直接赋值,也同样不会引发异常。

 

 

以下是个小Demo例子,帮助大家理解。

      Food.java 类

package com.example.demo.Bean;

import java.sql.Timestamp;
import java.util.Date;

public class Food {
	
	private Long id;
	
	private String name;
	
	private Integer number;
	
	private Date createTime;
	
	private Timestamp testTime;
	
	private String salCode;
	
	private Long mobilPhone;
	
	
	
	
	/**
	 * 重写 toString() 函数 
	 */
	@Override
	public String toString() {
		return "Food [id=" + id + ", name=" + name + ", number=" + number + ", createTime=" + createTime + ", testTime="
				+ testTime + ", salCode=" + salCode + ", mobilPhone=" + mobilPhone + "]";
	}
	
	/**
	 * 全参构造函数  
	 * 
	 * @param id
	 * @param name
	 * @param number
	 * @param createTime
	 * @param testTime
	 * @param salCode
	 * @param mobilPhone
	 */
	public Food(Long id, String name, Integer number, Date createTime, Timestamp testTime, String salCode,
			Long mobilPhone) {
		super();
		this.id = id;
		this.name = name;
		this.number = number;
		this.createTime = createTime;
		this.testTime = testTime;
		this.salCode = salCode;
		this.mobilPhone = mobilPhone;
	}
	
	
	/**
	 * 无参构造函数  
	 */
	public Food() {
		super();
	}
	
	
	
	
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Integer getNumber() {
		return number;
	}

	public void setNumber(Integer number) {
		this.number = number;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Timestamp getTestTime() {
		return testTime;
	}

	public void setTestTime(Timestamp testTime) {
		this.testTime = testTime;
	}

	public String getSalCode() {
		return salCode;
	}

	public void setSalCode(String salCode) {
		this.salCode = salCode;
	}
	
	public Long getMobilPhone() {
		return mobilPhone;
	}
	
	public void setMobilPhone(Long mobilPhone) {
		this.mobilPhone = mobilPhone;
	}
	
}

 

在Long类型数据转化成String类型数据时,对 Long类似数据进行非空判断处理,以避免引起一些异常报错信息。

package com.example.demo.test;

import com.example.demo.Bean.Food;

public class TestFood {
	
	public static void main(String[] args) {
		
		Food foodA = new Food();
		Food foodB = new Food();
		
		if (foodA.getMobilPhone() != null) {
			foodB.setSalCode(foodA.getMobilPhone().toString());
		}
		System.out.println("-------------------- Long类型变量赋值String类型变量无异常 --------------------");
		
		
		foodB.setName(foodA.getName());
		System.out.println("-------------------- String类型变量赋值String类型变量无异常 --------------------");
		
		
		foodB.setId(foodA.getId());
		System.out.println("-------------------- Long类型变量赋值Long类型变量无异常 --------------------");
		
	}
	
}

      

       测试运行结果如下图一: 

java == long javalong转成string_Time

                                                                             图一

 

在Long数据类型变量转换成 String类型数据变量时,没有对 Long数据类型变量做非空处理,报错。

java == long javalong转成string_类型变量_02

                                                                             图二

 

 

由这个小Demo可知,A数据类型变量在转化成B数据类型变量时,需要对A数据类型做一些非空(非默认值)的处理,以免引起一些报错信息。