黑马程序员技术交流社区

标题: 123 [打印本页]

作者: 吴仁请    时间: 2018-4-6 14:28
标题: 123
              第一天笔记

整数: 默认是int类型
            byte short  int  long
            long a = 123L;  定义long类型 后面要加L

        小数: 默认是double
            
            float:
                定义float 要加f   float  s = 3.14f;
            double

        字符
            char c = 'a'  单引号中间必须是一个字符

        布尔
            boolean   值只有true  false


隐式转换:
        byte,short,char --> int --> long --> float --> dounle
        先将取值范围小的变量提升为取值范围大的变量在进行相加       


                                 第二天笔记

键盘录入数据的步骤:一定要先记住
        A:导包(位置放到class定义的上面)
                import java.util.Scanner;
                在一个类中的顺序:package > import > class
        B:创建对象
                Scanner sc = new Scanner(System.in);
        C:接收数据
                int x = sc.nextInt();


                                第三天笔记
if语句
                      a.格式一
                                if (比较表达式) {
                                        语句体;
                                }
                     
                       b.格式二
                                if (比较表达式) {
                                        语句体1;
                                } else {
                                        语句体2;
                                }
                       
                       c.格式三
                                if (比较表达式1) {
                                        语句体1;
                                } else if (比较表达式2) {
                                        语句体2;
                                } else if (比较表达式3) {
                                        语句体3;
                                } else if (比较表达式4) {
                                        语句体4;
                                }
                                ...
                                else {
                                        语句体n + 1;
                                }


switch语句
                                switch(表达式) {
                                        case 值1:
                                                语句体1;
                                        break;
                                        case 值2:
                                                语句体2;
                                        break;
                                        ...
                                        default:
                                                语句体 n + 1;
                                        break;
                                }


for循环
                                for (初始化表达式; 条件表达式; 循环后的操作表达式) {
                                        循环体;
                                }
while循环
                                while(判断条件语句) {
                                        循环体;
                                        控制条件语句;
                                }



                              循环控制语句:
                                        break   结束本次循环
                                        continue  跳出本次循环,继续下次循环
                               


                                        第四天笔记


键盘录入数据的随机数: 先记住
A:导包(位置放到class定义的上面)
        import java.util.Random;
        在一个类中的顺序:package > import > class
B:创建对象
        Random r = new Random();
C:接收数据
        int x = sc.nextInt(10); //[0,10)

数组的定义格式:
                 动态数组: int[] arr = new int[]   
                 静态数组: int[] arr = new int[]{元素1,元素2,....}
                        简写形式:int[] arr ={元素1,元素2,....}  简写形式有局限性,无法拆开来写.


数组的遍历(获取数组的元素):
        int[] arr =new int[5];
        for(i = 0; i < arr.length; i++){
                System.out.println(arr[i]);i是获取索引的数值
}
数组长度arr.length



                                        第五天笔记
方法的定义格式:
                修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2.....){
                                方法体;
                                return 返回值;
                        }
格式解释:
        A:修饰符 目前记住 public static
        B:返回值类型    用于限定返回值的数据类型
        C:方法名            为了方便我们调用方法的名字
        D:参数类型        用于限定调用方法时传入的数据的类型
        E:参数名        用于接收调用方法是传入的数据变量       
        F:方法体        完成功能的代码
        G:return        结束方法,并且把返回值带给调用者

void修饰的方法只能单独调用
方法的返回值如果是void类型时,如果方法体内部没有书写return,系统会默认添加一个





                                第七天的笔记
成员变量和局部变量的区别:
        在类中位置:
                成员变量:类中,方法外
        局部变量:
                方法中或者方法声明上(形式参数)

        内存中位置不同
                成员变量:堆内存
                局部变量:栈内存

初始化值
        成员变量有默认值
        局部变量是没有默认值,必须手动赋值才能使用

生命周期
        局部变量:随着方法的调用而存在,随着方法的结束而弹栈
        成员变量:随着对象的创建而存在,随着对象消失而消失

面向对象的三大特性:
        封装:
             private: 私有的   对象名.set方法(值)    get方法名
                      修饰成员变量,成员方法
                      被 private 关键字所修饰的内容只能够在本类中使用
                原则:将不需要对外提供的内容都隐藏起来      
        继承:

        多态:

this 关键字:
        在类的方法中,调用属性,都可以用this.如果没有重名可以不用this,建议还是添加.

构造方法
        在一个类被实例化(new)的时候,自动化.


                                                第八天笔记



API:查手册

String:字符串类
        由多个字符串组成的一串数据
        字符串其体质是一个字符素质
注意:字符串是一种比较特殊的引用的数据类型,直接输出字符串对象输出的是该对象中的数据.

字符串定义方式区别:
                new 一个新字符串 对象在堆里面,内部的地址指向堆.
                不 new,直接赋值String age = 18,不进堆.而是直接指向方法区的常量池.
                理解方式: == 是比较的地址(非基本类型的时候) new 和不new地址不一样.



String成员方法:


sc.sc.nextLine()键盘录入     字符串
数组 --> 字符串:String s1 = new String(数组)
截取数组 --> 字符串String s3 = new String(数组,开始截取的下表,截取多少)


        判断功能:
                s1.equals(Object obj)比较字符串中的内容是否相同
                s1.equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
                s1.startsWith(String str):判断字符对象是否以指定的str开头
                s1.endsWith(String str):判断字符串对象是否以指定的str结尾


        获取功能:
                s1.length():获取字符串的长度
                s1.charAt(int index)获取指定索引处的字符
                s1.indexOf(String str):获取str在字符串对象中第一次出现的索引,如果没有出现返回 -1
                s1.substring(int start):从start开始截取字符串
                s1.substring(int start,int end):从start开始,到end结束截取字符串. 注:包括stara,不包括end.


        转换功能:
                s1.toCharArray():把字符串转换位字符数组
                s1.toLowerCase():把字符串转换为小写字符串
                s1.toUpperCase():把字符串转换为大写字符串
               

        去空格:
                s1.trim():去掉左右两边的空格
                s1.split()(某个字符串):根据某个字符串,把原字符串分割成数组


StringBuilder:
        s1.capacity()获取s1容器的容量
        s1.length()获取S1的长度

s1.append(内容):向字符串中追加
s1.reverse:字符串翻转

StringBuilder转成字符串
sb.toString();返回一个字符串
字符串转换成StringBuilder
new的时候,直接把字符串放进去就好了
new StringBuilder(字符串/字符串变量)

sb. charAt(int index) :获取指定索引处的某个字符
sb.  delete(int start, int end) 删除


                                        第九天笔记
Arraylict<E>
        大小可变数组的实现
        <E>:是一种特殊的数据类型
添加元素:
        public boolean add(E e):添加元素
        public void add(int index, E element):在指定的索引处添加一个元素





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2