java基础总结

一.Java语言基础

1.基本数据类型

基本数据类型有8种:

(1)数值型:

1)整数类型

整数数据类型在Java程序中有3种表现形式:十进制、八进制(必须以0开头)、十六进制(必须以ox开头)。

数据类型

内存空间(8位等于1字节)

取纸范围

byte

8

-128~127

short

16

-32768~32767

int

32

-2147483648~2147483647

long

64

-9223372036854775808~9223372036854775807

2)浮点类型

浮点类型表示有小数部分的数字。分为单精度(float)和双精度(double)

注:默认小数位double型,若使用float型小数,需在后面添加Ff

 

(2)字符型

1)char

储存单个字符,用单引号表示。

如:char x=’a’;(由于字符aunicode表中顺序位置是97可写成:char x=97;

char word=’d’;(unicode表中顺序位置是:(intword;)

int p=45213;(unicode表中第45213位是:(charp;)

2)转义字符

常用转义字符

含义

\’

单引号字符

\\

反斜杠字符

\t

空格

\n

换行

\r

回车

\b

退格

\f

换页

 

(3)布尔型:truefalse

2.数据类型转换

(1)隐式类型转换:从低价类型的向高级类型的转换系统自动执行。

类型从精度从低到高排序如下:byte<short<int<long<float<double.

(2)显式类型转换:把高精度的变量赋值给低精度的变量,也叫强制类型转换。

                    语法:(类型名)要求转换的值

 

3.变量与常量

在程序执行过程中,其值不能改变的量称为常量,能改变的量叫做变量

(1)标识符与关键字

1)标识符:用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。

注:Java语言规定标识符由任意的字母、下划线、$和数字组成,第一个字符不能是数字。

标识符不能是Java中的关键字

2)关键字:Java语言中已经被赋予特定意义的单词,如intifboolean等。

(2)声明常量

常量通常也叫“final变量”,声明常量的语法如下:

final  数据类型 常量名称[=]

;final double PI=3.1415926;(只能进行一次赋值)

注:当定义的final变量属于“成员变量”时,必须在定义时设定初始值。

(3)声明变量

语法如下:数据类型 变量名;如:int age;

(4)变量的有效范围

1)成员变量:

在类体中定义的变量叫成员变量,在整个类中都有效。成员变量又可分为静态变量和实例变量

静态变量:在成员变量的类型前面加上关键字static就是静态变量。如:static int y=90;

可以跨类使用,以“类名.静态变量”的方式在其他类中使用。

2)局部变量

在方法内部定义的变量以及方法的参数都叫局部变量,只在方法中有效。在方法中局部变量与成员变量同时出现时,成员变量被隐藏。

 

4.运算符

(1)赋值运算符(=

                    二元运算符,若含有2个以上“=”,从最右边开始处理。

(2)算术运算符(+-*/%):二元运算符

(3)自增自减运算符(++--):++a(--a)先运算后使用,a++(a--)先使用后运算。

                             单目运算符(用于数值型)

(4)比较运算符(><==>=<=!=):

                   运算结果为boolean型。二元运算符(用于数值型、字符型)

(5)逻辑运算符(&&||!):!为单目运算。

(6)位运算符

1)&(按位与):

运算法则:如果两个整型对应位都为1,结果才为1,否则为0。若两数精度不同,则结果精度与精度高的相同。

2)|(按位或):

运算法则:如果两个操作数对应位都为0,结果才为0,否则为1。若两数精度不同,则结果精度与精度高的相同。

3)~(按位取反):

运算法则:也叫按位非,将操作数二进制中的1改为0,0改为1.

4)^(按位异或):

运算法则:如果两个操作数同为0或者同为1时结果为0,否则为1。若两数精度不同,则结果精度与精度高的相同。

5)位移运算

对数据按二进制位进行移位操作,有3种:

<<:左移(y<<2=y*22

>>:右移(y>>2=y/22

>>>:无符号右移

(7)三元运算符

条件式?值1:值2

运算规则:若条件式的值为true,整个表达式取值1,若为false,整个表达式取值2.

 

5.代码注释

(1)//(单行注释)

(2)/*....*/(多行注释)

(3)/** */(文档注释)

6.数字处理类

(1)数学运算

Math中提供了众多数学函数方法,主要包括三角函数方法、指数函数方法、取整函数方法、取最大值、最小值及平均值方法

使用如下形式调用:Math.数学方法

Math类中还有一些常用数学常量,如:PIE

使用如下形式调用:Math.PI

(2)随机数

Math类中存在random()方法,用于产生随机数,弄人生成0.0~1.0double随机数,即:0<=Math.random<=1.0

(int)Math.random*n    (返回大于等于0小于n的随机数)

(int)Math.random*n +m    (返回大于等于m小于n+m的随机数)

 

二.流程控制

1.条件语句

(1)if语句

1)简单的if语句:if(布尔表达式){}

2)if...else语句:if(布尔表达式){}else{}

3)if...else if多支语句:if(布尔表达式){}else if(布尔表达式){}else if(布尔表达式){}...

(2)Switch语句

Switch(表达式){     //表达式值必须为整型、字符型、字符串型(新增)

Case 常量值:

语句模块

break;

...

default:

语句模块

break;

}

2.循环语句

(1)wile(条件表达式){执行语句}            //先判断再运行

(2)do{}while(条件表达式);           //先运行再判断,程序至少被执行1次,注意分号。

(3)for(表达式1;表达式2;表达式3{执行语句}      //循环次数固定的

表达式1

表达式2

执行语句

表达式3

表达式2

执行语句

.......

(4)break:只出现在switch及循环语句中,终止当前循环。

     continue:强制一个循环提前返回。

      return:结束当前方法的执行,返回调用该方法的语句处。

注:循环语句与循环语句以及条件语句可以根据需要嵌套使用。

3.程序调试

步骤:设置断点----单步运行----观察变量

F5:“单步跳入”。进入方法内部。

F6:“单步跳过”。仅执行本代码,执行完跳到下一行代码。

F7:回到断点。

F8:跳到下一个断点。

 

三.数组

1.定义数组:数据类型[]数组名=new数据类型[长度]

2.数组初始化:数据类型[]数组名={1,值2.......};或

             数据类型[] 数组名=new数据类型[]{1,值2.......}

3.数组长度:数组名.length

4.数组的常用操作:添加、修改、删除

删除的语句:for(int i=index;i<s.length-1;i++){

             s[i]=s[i+1];}

       s[s.length-1;]=null;

5.Arrays类常用的方法:

Arrays.equals(s1,s2);    //判断是否相等,不要加[]

Arrays.sort(s); //升序排列

Arrays.toString(s); //数组转为字符串

Arrays.fill(s,val); //数组所有元素赋值为val

Arrays.copyOf(s,n); //数组s复制成长度为n的新数组

Arrays.binarySearch(s,n); //查找数组sn的下标

 

 

 

四.字符串

1.定义字符串:String s = "有志者事竟成";String s = new String("有志者事竟成");

2.字符串的长度:name.length()

3.字符串的比较:Course1.equals(Course2)区分大小写

               Course1.equalsIgnoreCase(Course2)不区分大小写

               Course1.toUpperCase()全部转为大写

               Course1.toLowerCase()全部转为小写

4.字符串的连接:1)“+”。

               (2String s = new String("你好,");

                String name = new String("张三!");   

                String sentence = s.concat(name);

5.注:字符串是引用数据类型但是具有不变性,此特点同基本数据类型。

6.常用提取方法:

1indexOf(int ch) /indexOf(String value):搜索第一个出现的字符ch(或字符串value

     返回出现第一个匹配的位置, 如果没有找到字符或字符串,则返回-1

 

2lastIndexOf(int ch) / lastIndexOf(String value):搜索最后一个出现的字符ch(或字符串value

3substring(int index):提取从位置索引开始的字符串部分

4substring(int beginindex, int endindex):提取beginindexendindex之间的字符串部分(不包括末尾)

beginindex: 字符串的位置从0开始算;endindex:字符串的位置从1开始算

5String trim() :返回一个前后不含任何空格的调用字符串的副本

6a.charAt(int index):  获取指定位置的字符

7.StringBufferString增强版

1StringBuffer声明

      StringBuffer sb = new StringBuffer();

      StringBuffer sb = new StringBuffer("aaa");

2)转化为String类型

      sb.toString();       

3)追加字符串

      sb.append("**");

 

五.类与对象

1.区别:

对象是用来描述客观事物的一个实体。

是具有相同属性及方法的一组对象的集合。类定义了对象拥有的特征属性及行为方法。

2.类的定义步骤:定义类名、编写类的属性、编写类的方法

3.创建对象:AccpSchool center = new AccpSchool();

  使用对象:给类的属性赋值:对象名.属性

            调用类的方法:对象名.方法名()

 

4.数据类型总结

1)基本数据类型:作为成员变量时默认初始值为0,赋值操作传递的是变量的值,改变一个变量的值不会影响另一个变量。

2)引用数据类型:作为成员变量时默认初始值为null,赋值是把原对象的引用(内存地址)传递给另一个引用。

    对于数组而言,当一个数组名直接给另一个数组名赋值时,相当于传递一个引用,此时两个引用指向同一个数组,也就是同一个内存空间。

(3)特殊类型:null表示没有,不能给属性赋值,也不能调用方法。

(4)在作为方法参数时的区别:

基本数据类型是值的复制,经过方法后原值不变。

引用数据类型是内存地址的传递,经过方法调用后原值改变。

 

5.类的方法:

1)定义:public   返回值类型  方法名()  {方法的主体}

2)方法的命名:通常方法名是一个动词,如果有两个以上单词组成,第一个单词的首字母小写,其后单词首字母大写。

3)方法的返回值:如果方法具有返回值,方法中必须使用关键字return返回该值,返回类型为该返回值的类型。

如果方法没有返回值,返回类型为void.

(4)方法的调用:对象名.方法名();

1、类Student的方法a()调用Student类的方法b(),直接调用

public void a(){

      b();    //调用b()

}

2、类Student的方法a()调用类Teacher的方法b(),先创建类对象,然后使用“.”调用

public void a(){

      Teacher t = new Teacher();

      t.b();  //调用Teacher类的b()

}

 

6.

(1)包的创建:(使用package声明包,以分号结尾)

分别创建包和类:创建项目→创建包→创建类

创建类的过程中创建类所在的包:

创建项目→创建类(在此过程中声明所属包,如无声明,则显示“缺省包”)

(2)导入包import   包名.类名;(*: 指包中的所有类)

 

7.带参数的方法:

1)语法:<访问修饰符>返回类型 <方法名>(<形式参数列表>){

      //方法的主体}

调用带参数的方法:对象名.方法名(实参1,实参2,……,实参n)、

2)特殊应用:

1)数组作为方法的返回值

2)数组作为方法的参数

3)对象作为方法的参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值