• 第二周学习视频(一)


    一、游长实参表

    利用游长实参表,可在创建方法时不指定实参的个数
    eg.public static double average(double…numbers)
    一个参数表中只能出现一次省略号,并且省略号及其类型必须放在参数表的末尾.

    二、this

    每个对象都可以用关键字this引用自己, 称为this引用(即this指向当前对象)。
    构造函数体中,利用this来调用同一个类中的另一个构造函数,若这个this调用不是构造函数的第一条语句则会产生语法错误。
    类的方法试图直接通过this来调用构造函数,也会产生语法错误。

    三、Java API包

    Java包含了许多预定义的类,按相关性被分组成了不同的类别,这些类别称为包。 这些包被统称为java应用编程接口(API)java类库
    常见:java.util、java.applet、java.io、java.net、java.swing...

    四、常用类库- System类

    System类是一个公共最终类,不能被继承,也不能被实例化。
    System类定义的方法丰富且实用,其所有的变量和方法都是静态的

    五、常用类库- Math类

    1. 三角函数:sin,cos
    2. 指数:pow(y,x)
    3. 最大、最小值:max(y,x),min(y,x)
    4. 生成随机数:random(只能生成0.0—1.0之间的随机double值)
      eg. randomNumbers.nextInt();
      区别:Random类(number=偏移值+缩放率*randomNumbers.nextInt(n);)
      eg. Random randomNumbers=new Radom();
      int randomValue=randomNumbers.nextInt();
    5. ...

    六、常用类库- Date类

    实用Date类的构造方法,可以得到一个完整的日期。
    java.util.Date类中实际上取得的时间是一个非常正确的时间。但因为其显示的 格式不理想,不符合中国人的习惯要求,可使用DateFormat类对日期进行格式化操作 。

    七、常用类库- Calendar类

    Calendar类可以将取得的时间精确到毫秒。
    这个类是抽象类,可以使用它的具体实现类GregorianCalendar

    八、数组

    静态性:一旦创建就不能修改数组的长度。
    类似于动态数组的类型:类Vector,长度可以变大或缩小。


    数组是对象,是引用类型。
    数组的元素可以是基本类型或引用类型。


    使用关键字new,并指定数组元素的类型与个数。
    eg. int c[]=new int[12];
    int c[]; c=new int[12];
    int[] c;//c=new int[12];


    多维数组:最常用的多维数组是二维数组。
    eg. int[][] a = new int[3][4];

    九、字符串

    与C语言不同: 字符(char)数组不是字符串 (String)
    String数值不必以'u0000'结束。


    eg. String s1 = null;
    String s2 = new String( );
    String s3 = "您好!";
    String s4 = new String( s3 );


    int length():返回字符串的长度。
    方法 charAt(int index):获得字符串指定位置的字符
    方法 getChars(int srcBegin, int srcEnd, char[ ] dst, int dstBegin):复制字符串。

    十、== 运算符

    当用于基本数据类型(如int)时,用于判别是否相等。
    当用于引用数据类型(如String)时,用来判别引用是否指向相同的对象


    Java虚拟机中含有字符串池(直接量在此池内),相同内容的字符串直接量->相同的对象。
    eg.s1 = "hello"; // 字符串直接量
    s2 = new String( "hello" );
    s1 == "hello"; // true
    s2 == "hello"; // false

    十一、字符串比较

    boolean equals(Object anObject):
    比较当前的字符串与指定的对象(判断字符串内容是否相等)。
    比较结果为真当且仅当给定的参数不为空,并且具有完全相同的字符序列。
    eg. s1.equals( "Hi" );


    查找字符串(String)中的字符或子串:
    方法indexOf,返回第一次找到的时下标,如果没有找到,则返回-1 。
    eg.String name = "CoolTools"; System.out.println (name.indexOf("oo"));//1


    其他比较方法:略。

    十二、类String的成员方法valueOf

    静态(static)成员方法valueOf,将参数的值转化成相应的字符串。
    对象还可以通过方法toString转化成字符串。

    十三、其它String方法

    s1.trim():返回新字符串,源字符串最前面和最后面的的空白符(即返回去掉前后空白字符的子串);
    如果字符串没有被改变,则返回源字符串的引用


    s1.toString( ):由于s1本身就是字符串了,所以返回s1本身。
    其它引用类型也可以通过方法toString,生成相应的字符串。


    s1.toCharArray( ):将字符串转换成字符数组。


    其他String方法:略。

    十四、类StringBuffer

    补充:引用

    引用:保存对象对应的地址信息。
    eg. String str="hello";//"hello"所在地址是0x10,则str的值是地址0x10
    str="java"//"java"所在地址是0x11,则str的值变为地址0x11


    当"=="用于引用数据类型(如String)时,用来判别引用是否指向相同的对象
    eg.s1 = "hello"; //字符串直接量"hello"所在地址是0x10,则s1的值是地址0x10
    s2 = new String( "hello" ); //s2的值是另一个同为"hello"内容的对象的地址0x11,则s1的值是地址0x11
    s3 = "hello"; //s3的值也是字符串直接量"hello"的地址,则s3的值也是地址0x10
    s1 == "hello"; // true,即s1的值是字符串直接量"hello"的地址
    s2 == "hello"; // false,即s2的值不是字符串直接量"hello"的地址
    s1 == s2; // false,即s1和s2的值不都是字符串直接量"hello"的地址
    s1 == s3; // true,即s1和s3的值同为字符串直接量"hello"的地址

        // 基本类型参数,原始value不会被更改
        public void func(int value) {
            value = 100;
        }
    
        // 对于没有提供修改自身的成员方法引用类型,原始str不会被更改
        public void func(String str) {
            str = "hello";
        }
    
        StringBuilder sb = new StringBuilder("test");
    
        // 对于提供修改自身的成员方法引用类型,原始的sBuilder会被更改
        public void func(StringBuilder sBuilder) {
            sBuilder.append("aa");
        }
    
        // 原始的sBuilder不会被更改
        public void test(StringBuilder sBuilder) {
            sBuilder = new StringBuilder("111");
        }
    
  • 相关阅读:
    控制TABLE的一些属性
    windows7中各个dll文件作用和用途
    left join on and与left join on where的区别
    号外,left join比连表语句快80倍
    JS跳转语句
    [jQuery,Dojo,MooTools]
    CYQ.Data 数据框架 V3.5 开源版本发布(源码提供下载)
    Scala开发小小总结
    性能测试工具原理与架构
    joomla1.5模块开发和插件开发详解带实例
  • 原文地址:https://www.cnblogs.com/caihan/p/12355554.html
Copyright © 2020-2023  润新知