java基础:
1、数值型:
①整数类型:byte(8位)、short(16位)、int(32位)、long(64位)
②浮点型:float(32位)、double(64位)
③字符型:char
④布尔型:boolean
2、(全局变量)局部变量在类体中有效,局部变量在方法体内有效。
3、三元运算符:条件式?值1:值2
4、判断语句:
① if···else
② switch(){
case“值”: 值也可以为数字,英文和汉字
case“值”:
···
}
5、循环语句:
①while 为假的时候跳出循环体
②do···while 先执行一次循环后,在判断是否成立,至少被执行循环一次
③for循环语句
④foreach循环→for(元素变量X:便利的对象){引用了X的java语句}
⑤break:跳出本层循环
⑥continue:跳出本次循环
⑥可以给予标签、并根据标签跳出
6、String类:bhy
声明字符串:String s=new String(“student”);
①截取字符串:str.split(char,int offset(位置),int length(长度));
②获取字符串长度: str.length();
③字符串的查找:str.indexOf()字符串的开始位置;
str.lastIndexOf()字符串的最后一次出现,参数为空的话则和length方法一样。
④获取字符串的索引位置的字符:str.charAt(字符的下标)
⑤获取子字符串:str.substring(int beginIndex);
beginIndex指定从某一索引处开始截取字符串
str.substring(int beginIndex(开始位置),int endIndex(结束位置))
⑥去空格:str.trim();去的是两头的空格,不是中间的
⑧字符串替换:str.replace(char oldChar, char newChar);
⑨判断字符串的开始和结尾:开始:str.startsWith(String prefix);
结尾:str.endWith(String prefix)
prefix:是作为前缀和后缀的字符,
⑩判断字符串是否相等:str.equals(String otherstr);→不区分大小写的比较,
str.equalsIgnoreCase(String otherst);→区分大小写的比较.
“==“是比较的内存里面的地址是否相同
equals比较的则是字符串的不同
⑪按字典顺序比较两个字符串:str.compareTo(Sting otherstr);→基于Unicode值
⑫字母大小写的转换:toLowerCase();转换为小写
toUpperCase();转换为大写
⑬字符串分割:split(String sign) ;\(转义字符)
⑭格式化字符串:str.format();
⑮正则表达式:基于各种格式,用于判断的语句。
⑯字符串生成器:String 和 StringBuilder(更快)
StringBuilder(toString方法):
添加:append() 插入:insert(int offset(位置))
删除:delete(int start,int end)
7、一维数组:
①声明数组:int arr[]; String arr[];
②初始化数组:int arr[]=new int[]{1,2,3,4,5,6};或者 int arr[]={1,2,3,4,5,6}
③使用数组:pubilc static void main(String []args) {
int day[]=new int[]{31,28,30,31,30,30,31,31,30,31,30,31};
for(int i=0;i<12;i++){
System.out.println((i+1)+“月有”+day[i]+“天”);
}
}
8、二维数组:
①声明数组:int myarr[][];
②创建数组:a=new nit myarr[3][4];三行四列的一个数组
type arrayname[][]={value1,value2,value3,…valuen};
int b[][]=new int[][]{{1},{2,3},{4,5,6}} 这是一个三行三列的数组,
③④⑤⑥都是基于Arrays类的静态方法
③填充数组:Arrays.fill(int [],int value);
Arrays.fill(int [],int fromIndex(开始位置包括),int toIndex(结束位置不包括),int value)
④对数组进行排序:Arrays.sort(object);object数组的名称
⑤复制数组:Arrays.Copy(arr,int newlength);复制数组至指定长度(多的int 0补,char null补)
Arrays.OfRange(arr int,int formIdex,int toIndex);指定长度复制到新的数组中
⑥数组查询:
Arrays.binarySearch(Object[],Object key);(先排序在查询Arrays.sort(object);,查询的是排序后的下标)
9、数组的排序算法:思想??
冒泡排序:package test;
public class BubbleSort {
public static void main (String []args){
int array[] = new int[]{6,4,24,1,3,15};
BubbleSort sorter= new BubbleSort();
sorter.sort(array);
}
public void sort(int[] array) {
for(int i=1;i<array.length;i++){
for(int j=0;j<array.length-i;j++){
if(array[j]>array[j+1]){
int temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
showArray(array);
}
public void showArray(int[] array){
for (int i :array){
System.out.print(”<”+i);
}
System.out.println();
}
}
10、直接选择排序:思想??
11、反转排序:思想??