JAVA/JS针对常见的字符数据处理的一个总结(JS截取字符串,判断是否包含某个字符串及它出现的次数;JAVA数据四舍五入,去掉科学计数法,截取特定符号之前或之后的数据)

针对常见的字符数据处理的一个总结:

JS操作:

示例1: AA-BB-CC-DD 要求截取第二个 - 后面的数据,要求输出结果为:CC-DD
代码:

					var str="AA-BB-CC-DD";
					var a = str.indexOf('_');
					var d = str.substring(a+1,str.length);
					//截取第二个下划线
					var b = d.indexOf('_');
					var c = d.substring(b+1,b.length);
					console.log(c);  //CC-DD

示例2:字符串var str= "AA,BB,CC,DD"中
(1)判断是否包含字符 ‘ ,’

	//search:是否包含某个元素
	if(str.search(",") != -1){
    
    }

(2)判断字符 ‘ ,’ 出现次数

	var count=1;
	for (let index = 0; index < str.length; index++) {
    
    
			var a=str.indexOf(",",index);
			if(a!=-1 && str.indexOf(",",index)!=str.indexOf(",",index-1)){
    
    
				  count++;
			}
	}

(3)获取“,”分割开的所有数据 / 单独获取每项数据

	var UserName=[];
	for (let i = 0; i < count+1; i++) {
    
    
			var name=str.split(",")[i];
			UserName.push(name);
	}
	console.log(UserName); //输出结果为: ['AA','BB','CC','DD']
JAVA操作:

1.对XX路径做处理,获取XX名称.先接收一图片路径为: http://127.0.0.1:8080/cms/ReadAddress/1478584554147.jsp
要求获取图片名称:1478584554147.jsp

	public String getPhotoName(String path){
    
    
		//获取最后一个/后面的数据
		String img=path.substring(path.lashIndexOf("/")+1);
		return img;
	
		/**
		* 判断是否以 jpg结尾
		* int length=img.length();
		*  if(length>=3){
		* 	 String str=path.substring(length-3,length);
		*    if(str.equals("jpg"){
		* 	   System.out.println("图片以JPG结尾");
		*      //做处理
		* 	 }
		*	}
		*/		
	}

2.对时间做处理: 接收到的数据为 2021-09-06 23:48:465.22 ,现需求是要求时间精确到秒

	/**
	 * 精确到秒的时间戳
	 */
	public String getSecondTimestamp(String date){
    
    
	        if (null == date || date.equals("null")) {
    
    
	            return "";
	        }
	        int length = date.length();
	        if (length > 3) {
    
    
	            return date.substring(0, date.indexOf("."));
	        } else {
    
    
	            return "";
	        }
	}

3.float类型接收到的数据,显示结果时自动转换成了科学计数法,先今需求:去掉科学计数法,对该数据四舍五入要求保留3位小数

	/**
	 * float 去掉科学计数法,四舍五入保留3位小数
	 */
	public Float getThreeDecimal(Float data) {
    
    
		//去除科学计数法
		String str=new BigDecimal(data).toString();
		Float result = Float.parseFloat(str);
		return Math.round(result*1000)/1000f;
	}

4.float类型四舍五入保留整数(去掉结果后面的小数点)。接收到的数据为:10.515 ,对float进行四舍五入操作后保留的结果为11.0;数据量较小时,可采用以下方法

	 /**
	 * float 四舍五入,保留整数
	 */
	public Integer getRound(Float data) {
    
    
		Integer getInteger= (Integer)Math.round(data);
		return getInteger;
	}

5.String类型接收的数值数据,要求四舍五入保留整数

 	/**
	 * float 四舍五入,保留整数
	 */
	public Integer getRound(Float data) {
    
    
		Integer getInteger= (Integer)Math.round(data);
		return getInteger;
	}

6.String类型接收的数值数据,要求先除10后四舍五入保留整数

	/**
	 * String 转Double 转Integer /10,四舍五入,保留整数
	 */
	public Integer getInteger10(String data) {
    
    
		double value = Double.valueOf(data.toString());
		Integer getRound=Integer.parseInt(new java.text.DecimalFormat("0").format(value));
		Integer getRound2=Math.round(getRound/10);
		return getRound2;
	}

猜你喜欢

转载自blog.csdn.net/qq_45525250/article/details/120157618