1. 数组常用操作
	int[] arr=new int[3];//动态初始化
    //=左边放入栈内存,存放的是局部变量;右边放入堆内存,存储new动态分配的内容
    int[] arr2=arr;//多个数组指向相同
    
    int[] arr=new int[]{1,2,3};//静态初始化
    int[] arr={1,2,3};//同上
    
    int[] arr=null;//不指向任何有效地址,取arr[0]会空指针异常
    
    int len=arr.length;//获取元素个数
    
2. 方法的参数传递
  • 对于基本数据类型,形参的修改不影响实参
  • 对于引用类型的参数(比如数组),形参的修改影响实参
  1. 局部变量存放在栈内存中,没有默认值;全局变量存放在堆内存中,有默认值(0/null)

  2. 要操作类内的private成员变量,要通过类内的setXxx()和getXxx()来修改和访问

  3. this修饰的变量指代成员变量(在成员变量和局部变量重复时)

6. string
	String s1=new String();
    //用new创建的字符串对象,每次new都会申请一个内存空间
    String s3="abs;
    String s4='abs;
    //用""创建的字符串,只在字符串池中创建一次,本质是一个对象
    
	//比较==在基本类型间比较的是数据值是否相同,在引用类型间比较的是地址值是否相同
    s1.equals(s2)//比较字符串内容是否相同
    s.charAt()//取指定索引处的值
    s.length()//获取字符串长度,数组长度是arr.length
    
7. StringBuilder

StringBuilder中的内容是可变的,而String内容是不可变的

	StringBuilder sb=new StringBuilder();
    sb.append("java");
    sb.append(1).append(2);//链式编程
    sb.reverse();//反转
    
    //StringBuilder转String
    String s=sb.toString();
    //String转StringBuilder
    StringBuilder sb=new StringBuilder(s);