zoukankan      html  css  js  c++  java
  • java String类 trim() 方法源码分析

        public String trim() {
            int arg0 = this.value.length;   //得到此字符串的长度
            int arg1 = 0;         //声明一个int 值,并赋值为0

            char[] arg2;         //声明一个char数组
            for (arg2 = this.value; arg1 < arg0 && arg2[arg1] <= 32; ++arg1) {

       //将此字符数组赋值给arg2字符数组(java字符串底层是字符数组,这个字符数组就是String类的value属性);

       //为什么小于等于32,请参看ASCII码表,ASCII表32表示一个空格,32以下有tab制表符, 换行符, 回车符,退格等。

       //如果一个字符串为“ 123 ”,那么这个方法运行完毕,arg1的值会被赋值为1.
                ;
            }

            while (arg1 < arg0 && arg2[arg0 - 1] <= 32) {
                --arg0;

       //如果一个字符串为“ 123 ”,那么这个方法运行完毕,arg0会被赋值为4
            }

            return arg1 <= 0 && arg0 >= this.value.length ? this : this.substring(arg1, arg0);

        //arg1==1,所以走后面。this.substring(1,4)

        //含头不含尾,结果为“123”
        }

  • 相关阅读:
    Mysql实战面试题
    初探Google Guava
    Spring IOC核心源码学习
    用3句话像老太太讲清楚什么是数据库
    matlab如何读入mat型的矩阵
    工作记忆数据处理
    功能连接
    奖励学习
    格兰杰因果关系及其在医学影像数据中的应用
    GC wm
  • 原文地址:https://www.cnblogs.com/Mike_Chang/p/6745351.html
Copyright © 2011-2022 走看看