一、Java String类
1、创建字符串
- String()
- String(char[] a)
- String(char[] a,int offset,int length)
2、字符串操作
(1)连接多个字符串——使用"+"。
(2)连接其他类型数据——使用"+",连接之后返回值为字符串。
(3)获取字符串信息。
- str.length()
- str.indexOf(substr)
- str.lastIndexOf(substr)
- str.charAt(int index)
- str.trim()
- str.replaceAll(String regex,String replacement)——str.replaceAll(" ","")
- str.replace(String regex,String replacement)替换所有
- str.replaceFirst(String regex,String replacement)替换第一个
- str.equals(otherstr)
- str.equalsIgnoreCase(otherstr)
- str.startsWith(prefix)
- str.endsWith(suffix)
注意:Java String必须初始化为"",未被初始化的字符串执行"+"操作后打印出的字符串最前面是null
String str = null;
str += "Hello";
System.out.println(str);//nullhello
String str = "";
str += "Hello";
System.out.println(str);//hello
二、Java数组
1、声明
- int arr[];
- int[] arr;
- int[] arr=new int[5];
- int[] arr=new int[]{1,2,3,4,5};
- int[] arr={1,2,3,4,5};
- 一维——for(int i=0;i<arr.length;i++)或for(int x:arr)
- 二维——for(int i=0;i<arr.length;i++)for(int j=0;j<arr[i].length;j++)或for(int x[]:arr)for(int y:x)
- void fill(int[] a,int value);
- void fill(int[] a,int fromIndex,int toIndex,int value);
- Arrays.sort(arr)
- int[] copyOf(int[] source, int length)
- int[] copyOfRange(int[] source, int from, int to)
- String[] str={"1","2","3"};
- boolean flag=Arrays.asList(str).contains("2")
- int[] arr={1,2,3,4,5};
- ArrayUtils.reverse(arr);(ArrayUtils是apache提供的数组处理类库)
- int[] arr={1,2,3,4,5};
- ArrayUtils.removeElement(arr, 3);(ArrayUtils是apache提供的数组处理类库)
三、Java对象
1、访问控制符:public、private、protected
2、修饰符:static、final、abstract、synchronized、native
3、方法调用
- 非静态方法调用非静态方法,直接调用;
- 非静态方法调用静态方法,直接调用;
- 静态方法调用静态方法,直接调用;
- 静态方法调用非静态方法,先声明一个包含该非静态方法的类的对象,再用对象名.方法调用该非静态方法。
4、按值传递:把参数的原始数值copy一份,在方法内部修改的是拷贝的值,而非原始数值。(八种基本数据类型和String)。
按址传递:把参数在内存中的存储地址传递到方法内部,在方法内部通过存储地址改变对于存储区域的内容(除String外的所有符合类型,包括数组,类,接口)。
5、对象声明时在内存无存储空间,初始化后才会分配空间。