问题描述: 向Oracle数据库中一varchar2(64)类型字段中插入一条String类型数据,程序使用String.length()来进行数据的长度校验,如果数据是纯英文,没有问题,但是如果数据中包含中文,校验可以通过,但是在数据入库时经常会报数据超长. 问题分析: 既然问题是数据超长,那么问题应该就是出在数据长度校验上,也就是出在String.length()这个方法上,来看看JDK是如何描述这个方法的: length public int length()返回此字符串的长度.长度等于字…
String[] timePhase = reservationRuleInDTO.getTimePhase().split(",");List<ReservationTimeRule> reservationTimeRuleList = new ArrayList<>();for(int i =0;i<timePhase.length;i++){ reservationTimeRule = new ReservationTimeRule(); if(ti…
引言 String可以说是在Java开发中必不可缺的一种类,String容易忽略的细节也很多,对String的了解程度也反映了一个Java程序员的基本功.下面就由一个面试题来引出对String的剖析. 1. String在源码里究竟是如何实现的,它有哪些方法,有什么作用? 从源码可以看出,String有三个私有方法,底层是由字符数组来存储字符串 public final class String implements java.io.Serializable, Comparable<String…