A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© sunnyday 中级黑马   /  2016-5-19 23:43  /  542 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 sunnyday 于 2016-5-20 00:30 编辑

初来驾到,请多多支持{:2_30:}{:2_31:}{:2_41:}{:2_44:}{:2_38:}
变量的定义格式
        * 数据类型 变量名 = 变量值;

一条语句可以定义几个变量
                * int a,b,c...;
一维数组
数据类型[]  数组名  =  new  数据类型[数组长度];

数据类型:数组中存储的元素的数据类型,它可以是任何Java数据类型

int[] intArray = new int[3];

double[] dobArray = new double[3];

String[] strArray = new String[5];

boolean[] bolArray = new boolean[10];

数组长度:可以是字面常量、变量、表达式
int a = 10;
int b = 5;
int[] arr = new int[a + b];//OK的

数据类型[]  数组名  =  new   数据类型[]{值1,值2,值3, .... , 值n};
数据类型[]  数组名  = {值1,值2,值3, .... , 值n};        

二维数组
第一种方式:
int[][] arr = new int[3][4];
                                       


第二种方式:
int[][] arr = new int[3][];

第三种方式:
int[][] arr = {{1,2},{3,4,5,6},{7,8,9}};
               
               

               
//定义一个类

public class fruitItem {
                int id;
                String name;
                double price;
                int count;
                double money = count * price;
}


//新建一个类:        

                fruitItem ff = new fruitItem();
// 创建ArrayList集合
               
                ArrayList<fruitItem> list = new ArrayList<>();
// 向集合中添加元素
                list.add("ff");
               
// 获取集合中元素的个数
                System.out.println("集合的长度:" + list.size());
// 取出并打印指定位置的元素
                System.out.println("第1个元素是:" + list.get(0));

//定义一个类

public class fruitItem {
        int id;
        String name;
        double price;
        int count;
        double money = count * price;
}
//新建一个类:        

fruitItem ff = new fruitItem();        //只能从一个类的集合中"整体"取出这个类,而不是直接取出这个类的各个属性!!!

//赋值填充
                ff.id = id;
                ff.name = name;
                ff.price = price;
                ff.count = count;
                ff.money = money1;


if语句的格式1

                if(比较表达式) {
                        语句体;
                }
执行流程:
     先计算比较表达式的值,看其返回值是true还是false。
         如果是true,就执行语句体;
        *如果是false,就不执行语句体;

选择结构if语句注意事项

        a:比较表达式无论简单还是复杂,结果必须是boolean类型
         b:if语句控制的语句体如果是一条语句,大括号可以省略;
           如果是多条语句,就不能省略。建议永远不要省略。
         c:一般来说:有左大括号就没有分号,有分号就没有左大括号


if语句的格式2

                if(比较表达式) {
                        语句体1;
                }else {
                        语句体2;
                }
执行流程:
       首先计算比较表达式的值,看其返回值是true还是false。
        如果是true,就执行语句体1;
        如果是false,就执行语句体2;

        

        注意事项:else后面是没有比较表达式的,只有if后面有。


        
       三元运算符实现的,都可以采用if语句实现。反之不成立。
        
      什么时候if语句实现不能用三元改进呢?
              当if语句控制的操作是一个输出语句的时候就不能。
               为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该有一个结果,而不是一个输出。

(选择结构if语句格式3及其使用)(掌握)
if语句的格式3:

                if(比较表达式1) {
                        语句体1;
                }else if(比较表达式2) {
                        语句体2;
                }else if(比较表达式3) {
                        语句体3;
                }
                ...
                else {
                        语句体n+1;
                }
执行流程:
         首先计算比较表达式1看其返回值是true还是false,
         如果是true,就执行语句体1,if语句结束。
         如果是false,接着计算比较表达式2看其返回值是true还是false,
        
         如果是true,就执行语句体2,if语句结束。
         如果是false,接着计算比较表达式3看其返回值是true还是false,
        
         如果都是false,就执行语句体n+1。
注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示

switch语句的格式

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

switch语句的格式解释

     
执行流程
先计算表达式的值
然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句



选择结构switch语句的注意事项)(掌握)

       case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
        default可以省略吗?
            可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
               特殊情况:
                      case就可以把值固定。
                      A,B,C,D
        break可以省略吗?
         最后一个可以省略,其他最好不要省略
        会出现一个现象:case穿透。
         最终我们建议不要省略
        default一定要在最后吗?
                * 不是,可以在任意位置。但是建议在最后。
        switch语句的结束条件
                遇到break就结束了
                执行到switch的右大括号就结束了
总结switch语句和if语句的各自使用场景
         switch建议判断固定值的时候用
       if建议判断区间或范围的时候用

循环结构的分类
        for,while,do...while                                          //for语句执行后变量会被释放,不能再使用
                                                                        //while语句执行后,初始化变量还可以继续使用

循环结构for语句的格式:

                for(初始化表达式;条件表达式;循环后的操作表达式) {
                        循环体;
                }
执行流程:
     执行初始化语句
     执行判断条件语句,看其返回值是true还是false
                 如果是true,就继续执行
                 如果是false,就结束循环
        执行循环体语句;
        执行循环后的操作表达式


     回到b继续。

(循环结构while语句的格式和基本使用)
while语句的格式:
               
        
               
        完整格式:
               
                初始化语句;
            while(判断条件语句) {
                         循环体语句;
                         控制条件语句;
                }
执行流程:
        执行初始化语句
       执行判断条件语句,看其返回值是true还是false
              如果是true,就继续执行
            如果是false,就结束循环
        执行循环体语句;
        执行控制条件语句
        回到B继续。

(循环结构do...while语句的格式和基本使用)

               
完整格式;
                初始化语句;
                do {
                        循环体语句;
                        控制条件语句;
                }while(判断条件语句);
执行流程:
         a:执行初始化语句
         b:执行循环体语句;
         c:执行控制条件语句
         d:执行判断条件语句,看其返回值是true还是false
                * 如果是true,就继续执行
                * 如果是false,就结束循环
循环结构三种循环语句的区别)

         三种循环语句的区别:
        do...while循环至少执行一次循环体。
         而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。

         for循环和while循环的区别:
                * A:如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用谁就用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。

(循环结构注意事项之死循环)
一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。
两种最简单的死循环格式
         while(true){...}
         for(;;){...}

7 个回复

倒序浏览
小伙子不错不错,好好加油

点评

谢谢还请多多指教!!  发表于 2016-5-19 23:51
回复 使用道具 举报
lf19920227 发表于 2016-5-19 23:47
小伙子不错不错,好好加油

谢谢,还请多多指教啊!!
回复 使用道具 举报
我也在学习java基础,加油!!!总结得很好
回复 使用道具 举报
全部用平实的语言表达出来了,挺清晰的,赞!
回复 使用道具 举报
好厉害,我也在学,可是总结不出来
回复 使用道具 举报
大部分参考的老师的笔记,  还请大家多发表意见.谢谢谢谢!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马