JAVA总复习纲要
Java傻瓜化的运行环境
1. eclipse 和jre
2. 使用jdk,jdk需要配置环境变量 如何配置环境变量
自己编写第一个java的运行程序
1 package xyf; 2 3 public class test1{ 4 5 public static void main(String []args) 6 7 { 8 9 System.out.println(“test”);}}
3 .eclipse 个性化配置
3.1 eclipse 修改字体大小样式,修改背景颜色,默认页面的编码方式,,
3.2配置运行环境 jre 哪个版本 tomcat哪个版本
3.3配置eclipse的工作空间
4.注释 方法一:使用ctrl 加 / 对单行进行注释
方法二:在每一行的前面使用 // 对该行进行注释
方法三:使用 /* */对某一段落进行注释
5.方法参数以及返回值的类型
1 public void test(String a) 2 3 { 4 5 System.out.println(“use this test”); 6 7 }
该方法的返回值为void 也就是没有返回值,形参为String类型的参数a可以不用管,只要传入一个String类型的参数就可以使用该方法,需要注意的是该方法并不是一个静态的方法 在使用该方法的时候需要先new一个对象再去调用该对象的test方法,如 test1 t1=new test1(); t1.test(“aa”);
有关静态的说明以后提到
6.什么是变量
变量顾名思义就是可变化的量,如何定义一个变量
Int i=3;
如上所示,int i=3 表示定义一个i为3的变量,
6.1变量的基本类型
Int 类型也就是整形
Long 类型长整形
char类型字符型
float单精度浮点型
double 双精度浮点型
boolean 布尔类型(1或者0 true或者false)
封装的数据类型:String , Integer, Boolean ,Float ,Long 以后会提到
由于计算机使用0 和 1 表示所有数据 在表示小数的时候会存在失精的问题,也就是说无法准确的表示每一个小数,所以双精度的浮点类型可以表示更长,更加准确的小数。6
6.2变量的标识符
在一个变量中int char float double都表示这个变量的标识符,千万不要使用int int=1;来定义一个整数 这样是无效的,变量的定义是存在一定规范的,只允许字母 数字 下划线,并且开头不能为数字
6.3变量的初始化以及作用域的问题
在定义一个变量的时候
我们可以使用int i;不给i 附初始值来定义它,这样的变量我们统一称之为该变量未初始化。
变量的作用域问题,当我们使用一个方法的时候
如该方法,String a是它的形参,而t1.test(“a”);是它的”a”是它的实际参数,这里相当于String a = “a” 然后进入方法体,在方法体内部执行完毕后,如果不使用return 来返回一个参数给主函数的话,那么该方法的生命周期到此结束,该方法内部所有的变量均属于局部变量 会在函数执行完毕后被系统回收,无法作用到主函数。
6.4类型转换以及运算符
如果存在要将一个小数转换为整数在运算的时候该怎么最
double a=2.5;
int b=(int)a;
输出b会发生什么 答案是2
计算机可不会四舍去五入,当它进行小数转换为整肃的时候会自动抛弃掉小数部分 也就造成了答案为2的结果
1 package xyf; 2 3 public class test1{ 4 5 public static void main(String []args) 6 7 { 8 9 System.out.println("a"); 10 11 //test(); 12 13 test1 t1=new test1(); 14 15 t1.test("a"); 16 17 } 18 19 public void test(String a) 20 21 { 22 23 System.out.println("b"); 24 25 } 26 27 }
运算符:
+ 加法运算
- 减法运算
a=a*b; 乘法运算,赋值运算 将a 乘以 b的结果赋值给a
注意赋值运算是从右到左的
/ 除法运算 %求余
7.逻辑运算
适用于逻辑判断
有if else
1 if(a>b) 2 3 { 4 5 } 6 7 else 8 9 { 10 11 }
如果a大于b则 怎么样怎么样,否则又怎么样。支持嵌套使用
1 if(a>c) 2 3 { 4 5 if(a>b) 6 7 { 8 9 } 10 11 }
Switch开关语句的使用
1 switch(b) 2 3 { 4 5 case 1: 6 7 break; 8 9 case 2: 10 11 break; 12 13 }
判断b的值 如果为 1 则执行1的内容 为2 执行2 的内容,以此类推
7.1三元运算符
将判断语句简化之后的运算符 a>b?a:b;
1 System.out.println( a>b?"a":"b");
如果a大于b则输出a 否则输出b
?表示判断 :表示否则
7.2短路运算
a>b&&a>c;
if(a>b&&a>c)
判断a大于b 又大于c的情况,但是需要注意的是短路运算其中一个为false 则另外一端不会执行
也就是说如果系统判断出 a 小于b 了那么就不会判断a 与c的情况了。直接为false
8 循环与数组
8.1循环
如果想让程序不间断的执行的时候,就需要使用循环语句来达到控制的效果,如
方法一使用while循环
1 while(true) 2 3 { 4 5 System.out.println(b); 6 7 }
程序会不间断的输出b
方法二
1 for(;;) 2 3 { 4 5 System.out.println(b); 6 7 } 8 9 使用for循环,for循环相比while循环的优势在与 10 11 for循环可以更加方便的达到控制的目的,比如只想要系统输出100次,那么 12 13 for(int i=0;i<100;i++) 14 15 { 16 17 }
其中第一个为定义的整数i为,当i小于100的时候,i每次执行完循环就自增1,也就是i++;
在这里引出自增运算符 ++
i++的本意上更接近于i=i+1;
当然还有另外一种自增运算++i;++i是先自增后在运算 而i++是先运算在自增 切记。
8.2数组
数组是什么?
当想要将一些int类型的变量存放在一起的时候 就出现了数组,其数组存放的变量本质上都是存放在系统中连续的内存区域,而变量则是系统随机离散申请的一块儿内存区域,并不在一起。
如何定义一个数组
int []ba=new int[10];
定义一个长度为10的整形数组
在数组中 元素是从下标为0开始的
比如 ba[0] ba[1] ba[2] … ba[9]
同样如何对一个数组赋值,我们经常使用循环来对数组赋值
1 int []ba=new int[10]; 2 3 for(int i=0;i<10;i++) 4 5 { 6 7 ba[0]=1; 8 9 }
将该数组的所有元素都赋值为1
数组的方法
我们可以使用
ba.length这个方法来计算数组的长度
ba.clone来克隆一个数组
ba.equals来比较两个数组
案列1.返回int数组的最小值,传入一个数组 获得它的最小值并返回一个int类型的
1 static int get(int []nums) 2 3 { 4 5 int m=nums[0]; 6 7 for(int i=0;i<nums.length;i++) 8 9 { 10 11 if(m>nums[i]) 12 13 { 14 15 m=nums[i]; 16 17 } 18 19 20 21 } 22 23 24 25 return m; 26 27 }//
返回数组的最小值
练习 1.返回两个int数组的和
1 static int[] addd(int[] a,int[] b) 2 3 { 4 5 int []bb=new int [a.length+b.length]; 6 7 for(int i=0;i<a.length;i++) 8 9 { 10 11 bb[i]=a[i]; 12 13 } 14 15 for(int i=0;i<b.length;i++) 16 17 { 18 19 bb[i+a.length]=b[i]; 20 21 } 22 23 return bb; 24 25 }
扩展 定义一个未知长度的数组
1 8.3可变长参数的使用 2 3 static int sum1(int... nums)//可变长度参数 4 5 { 6 7 int sum=0; 8 9 for(int i=0;i<nums.length;i++) 10 11 { 12 13 sum+=nums[i]; 14 15 } 16 17 return sum; 18 19 }
其中 int … nums为一个可变长的参数,也就是我们可以传递任意大小的int数组 并且获得它的最大值
8.4二维数组的使用
int [][]abc=new int [1][1];
定义一个长度为1宽度为1的二维数组 ,二维数组可以想象成一个xy的坐标系,长为1 x为1 宽为1 y为1 的坐标数组,同样它的下标起点也是从0开始的
9.方法
方法是什么?如果我们每次计算一个数组的和的时候都需要写那么多的代码吗,其实不需要的,有了方法之后我们可以更加简单 方便的使用方法来完成 重复的事情,方法是一段可以重复利用的的代码段
方法可以定义形参 和 返回值 return
比如/*
* 全角字符和半角字符相互转换
*/
1 public static String ToDBC(String input) 2 3 { 4 5 char chars[] = input.toCharArray(); 6 7 for (int i = 0; i < chars.length; i++) 8 9 { 10 11 if (chars[i] == ‘\u3000‘) 12 13 { 14 15 chars[i] = ‘ ‘; 16 17 } else if (chars[i] > ‘\uFF00‘ && chars[i] < ‘\uFF5F‘) 18 19 { 20 21 chars[i] = (char) (chars[i] - 65248); 22 23 } 24 25 } 26 27 return new String(chars); 28 29 }
这就是一个方法 ,方法中传入它的形参 并执行它的功能,最终返回一个结果 当然可以不要形参和返回值的方法
接下来就是java面向对象的内容了
2018-01-03 11:23:33