[疯狂Java讲义精粹] 第三章|流程控制与数组

0. switch语句的控制表达式的数据类型只能是byte、short、char、int四种整数类型(可以理解为只有int型, 前三种是自动类型转换为int)和枚举类型和java.lang.String类型.


1. for(;;)可以省略循环条件, 循环条件默认为true.


2. break语句不仅可以跳出所在的循环, 还可以跟"标签"配合, 直接结束其外层循环. 

    continue语句也可以跟"标签"配合, 直接执行"标签"所标示的循环语句的下次循环. (Java中的标签只有放在紧挨着循环语句之前才有作用).

outer:
for (int i = 0; i < 5; i++)
{
    for (int j = 0; j < 3; j++)
    {
        System.out.println("i的值为: " + 1 + "j的值为: " + j);
        if (j == 1)
        {
            break outer; //将break替换为continue则为continue与标签配合的示例.
        }
    }
}

3. return的功能是结束一个方法.


4. 数组也是一种数据类型, 属于引用类型(*即指针).


5. 定义数组: (type[] arrayName;)或(type arrayName[];).


6. 初始化数组.(不能同时使用静态和动态初始化, 即不能在初始化时既指定长度又分配初始值.)

静态初始化: (arrayName = new type[]{element1, element 2, element 3, element 4 ...}) ---->此处type需与定义数组时的type相同, 或是其子类; 花括号中的元素是此type类或子类.

                  简化写法: (arrayName = {element1, element 2, element 3, element 4 ...}) ,

                  与定义同时完成: ( type[] arrayName = {element1, element 2, element 3, element 4 ...}) .

动态初始化: (arrayName = new type[length];) ---->length为int型.

                  与定义同时完成: (type[] arrayName = new type[length];).

                   (动态初始化只指定数组长度, 由系统为每个元素指定初始值. 整数类型(byte、short、char、int)初始化为0; 浮点型 -> 0.0; 字符型 -> '\u0000'; 布尔型 -> false; 引用类型(类、接口和数组) ->null.


7. foreach循环语句遍历数组和集合. (for(type variableName : arrayName | collection){ })中type是数组元素或集合元素的类型, variableName是形参, foreach循环将数组元素或集合元素依次付给该变量.

public class ForEachTest
{
	public static void main(String[] args)
	{
		String[] books = {"book a", "book b", "book c"};
		for (String book: books)
		{
			System.out.println(book);
		}
	}
}

8. 栈内存: 每个方法被执行时都会建立自己的内存栈, 在这个方法内定义的变量将逐个放入这个栈内存里. 方法结束, 内存栈销毁.

堆内存: 创建对象时, 这个对象将被保存到运行时(runtime)数据区中,一边反复利用(因为对象的创建成本通常较大), 这个运行时数据区就是堆内存. 堆内存中的对象不会随方法结束而销毁, 因为即使方法结束后, 这个对象还可能被另一个引用变量所引用. 还有当一个对象没有任何引用变量引用它时, 系统的垃圾回收器才会在合适的时候回收它.


9. 二维数组定义: (type[][] arrName;),

初始化: (arrName = new type[length][];) ----> 相当于定义一个长度为length的一位数组, 数组的每个元素都是type[].

也可以一下初始化两个维数: (int[][] b = new int[3][4]类型;).


10. Arrays类里包含的一些static修饰的方法可以直接操作数组. (static修饰的方法可以直接通过类名调用.)

Arrays类处于java.util包下, 要在程序中使用Arrays类, 必须在程序中导入java.util.Arrays类.


11. (public static void main(String[] args) throws Exception {}) 中的throws Exception声明表示改正虚的main方法不处理任何异常.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值