继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

JAVA基础课程

喵喵一只汪
关注TA
已关注
手记 315
粉丝 86
获赞 467

(一)变量:在程序的执行过程中,其值发生改变的量
数据类型的分类
基本数据类型:4类8中
整数类型:   (整数类型默认int类型)               占用的字节数             范围
byte  :字节类型                                 1           -128~127
short :短整型                                      2
int   :整数类型                      4
long  :长整型                               8
浮点类型:(浮点类型默认double类型)
float :单精度                      4
double:双精度                      8
字符类型:
char                            2
布尔类型
boolean(true/false)             1

  引用数据类型(数组讲)  定义long类型的变量        :由于整数类型默认是int类型 ,所有在long类型变量值后面加上一个标记:L或者l ,建议使用L        定义变量的注意事项:    1)定义变量,不能是Java中的关键字    2)不能是以数字开头    3)一个变量名不能重复定义    4)建议:一行定义一个变量      关于变量中的一些问题

在进行变量计算的时候  :尽量同一个的数据类型之间进行换算

不同类型之间的数据:数据类型的默认提示

byte,short,char 三个之间相互不转换的,但是一旦参与运算,都默认转换转换成int类型

强制类型转换:
目标数据类型   变量名 = (目标数据类型)(变量值);

(二)常量
常量:在程序的执行过程中,其值不发生改变的量
常用的分类:
A 字面值常量
a:字符串常量 : 用双引号括起来的内容
"hello"
b:字符常量: 用单引号括起来的单个内容
'A','a','0'  ,
'ab'(错误的)
c:整数常量  
100
d:小数常量
3.1415926
e:布尔常量:
true(false)
f:空常量
null   (在讲面向对象的时候,如果一个对象为null,那么一定要给对象进行非空判断)
if(xxx!=null){

       }    B 自定义常量(在继承部分讲)

alt+/   代码提示(神键)
ctrl+d  删除某一行
ctrl+/  单行注释
ctrl+shift+/ 多行注释
(三)JAVA中的注释
java中的注释
三种注释:  //  单行注释    多行注释/ 星 书写注释的文字 星/    文档注释:/星 星  注释的文字  星/

关键字:在java中被赋予特定含义的单词

class:java中最基本单元
public:权限修饰符:公开的
private:私有的
(四) Java中的标识符:
给类,接口,方法,包(package)等起名字的字符序列

标识符的组成规则:
1)英文的字母大小写
2)数字字符
3)$和

注意事项:
不能以数字字符开头

针对包(目录)名命名的规则: 字母全部都小写
单级包:
westos
多级包:
org    
westos
makename

类,接口命名的规则:
单个单词:第一个字母大写
举例:class Demo  
多个单词:每个单词的首字母都大写
举例:class HelloWorld

给方法命名的规则:
单个单词:字母全部都系小写
比如:main()
多个单词:一个单词全部小写,从第二个单词每个单词首字母大写
比如:checkUserName()

给常量命名的规则:
单个单词:字母全部大写
HELLO
多个单词:字母全部大写,每个单词用下划线隔开
(五)JAVA中的运算符
Java中的运算符
算术运算符
赋值运算符
比较运算符
逻辑运算符
三目(三元)运算符
键盘录入
1、算术运算符:
基本算术运算符
+,-,,/,%(模)

注意事项:
/:取的是整数
扩展的算术运算符:
++或者--

    单独使用:            结论:无论++或者--再数据前还是数据后,都是自增1或者自减1    参与运算使用:            结论:如果++或者--再数据的前面,先自增或者自减,再参与运算                如果++或者--再数据的后面,先运算,再进行自增或者自减

在实际开发中,++在后用的多(比如:流程空语句 for循环语句 步长语句变量名++)
关于+的用法
+:可以作为运算符

    + :表示一个数是正整数    + :可以作为字符串的拼接符     2、 比较运算符:    >,>=,<,<=,==

注意事项:
== 不能写成=
3、 赋值运算符
基本的赋值运算符:=
举例: int a = 10 ;  将10赋值给int类型的变量a

扩展的赋值运算符:
+=,-=,=,/=,%=
y += 10 ;     把右边的数据赋值给左边,然后在和左边的数据求和
4、逻辑运算符:
基本逻辑运算符
&:逻辑与   |:逻辑或   ^(逻辑异或)  !(逻辑非)

    结论:        逻辑&: 有false,则false        逻辑或|:有true,则true        逻辑异或:^:相同则为false,不同则为true            简单记:(男女关系) 男男  男女  女男  女女        逻辑非!:非true则false,非false,则true,偶数个是他本身          扩展的逻辑运算符:    逻辑双与:&&    逻辑双或:||       5、三目运算符--->三元运算符    语法:        (表达式)? true的结果:false的结果;

表达式:  举例:  (x>y)  
(100>150)

执行流程:
首先判断表达式是否成立,如果比表达式成立,就执行true的结果,否则,false的结果;
package org.westos键盘录入;
//导包
//ctrl+shift+o 快速导包
import java.util.Scanner;

/
之前运算符,变量,值都写死的,程序不灵活,所以引入键盘录入!

键盘录入的步骤:
1)创建一个键盘录入对象
Scanner scanner = new Scanner(System.in) ;

    2)由于java.lang. 包不是不用导包的,但是Scanner它是java.util.Scanner        导包: import java.util.Scanner;    3)接收键盘录入的数据(以int类型为例)        int number = sc.nextInt() ;  //nextXXX() ;    4)输出数据

格式

/
public class ScannerDemo {

public static void main(String[] args) {    //1)创建键盘录入对象 并且导包了    Scanner sc = new Scanner(System.in) ;    //2)提示用户并且接收键盘录入    System.out.println("请您输入一个数据:");    int number = sc.nextInt();    //输出    System.out.println("您输入的数据是:"+number);}

}
(六)JAVA中的流程控制语句
流程控制语句

    顺序结构语句    选择结构语句        if语句        switch语句    循环结构语句        for        while        do-while循环

1、顺序结构语句
顺序结构语句: 代码从main方法中从上而下依次执行的!
2、选择结构语句
1)if语句
分类:
三种格式
if(条件表达式){  
语句;
}

执行流程:如果表达式成立,那么执行语句,否则,不执行
应用场景:适合单个条件的判断

           if语句的注意事项:                            1)if语句中的大括号,可以省略,但是不建议省略                            2)有大括号的地方不能有分号,有分号的地方不能有大括号!                            3)这种格式的if语句,适合单个条件的判断

if语句的第二种格式:
if(条件表达式){   条件表达式:无论是简单的表达式还是复杂的表达式  值都是boolean类型
语句1;
}else{
语句2;
}

      执行流程判断条件表达式是否成立,成立,就执行语句1;if语句的第三种格式:    if(条件表达式1){            语句1;    }else if(条件表达式2){            语句2;    }else if(..){            语句3;    }else{            语句n+1;    }

执行流程:
先判断条件表达式1是否成立,成立,则执行语句1
不成立,判断条件表达式2是否成立,
成立,执行语句2
...

    如果都不成立,最终执行else中的语句    2)switch语句    格式

switch(表达式){
case 值1:
语句1;
break ;
case 值2:
语句2;
break;
case 值3:
语句3;
break;

 .... default:    语句n+1;    break;

}

执行流程:
case语句中的值1和表达式中的值比较,如果一致,执行语句1
如果不一致,走case 值2,再进行比较,如果椅子,执行语句2
....

   如果上述都不一致,执行default中的语句

格式的解释:
switch:当前是一个选择结构语句,它的作用和if语句是一样
case语句:它后面的值是和表达式进行比较
break:表示结束当前switch语句
default:是和if语句中的else意识时候一样的,如果条件都不成立,执行default中的语句
关于switch语句中的注意事项:
1)case语句的后面只能跟常量(根据具体的需求),不能跟变量!    javascript中的case后面是可以跟变量并且还可以表达式
2)default语句可以在switch语句中的任何位置,不影响代码执行,如果是在语句中,那么break最好带上
3)建议把break带上,否则会造成一个现象:case穿透!
4)switch语句的结束条件:
1)语句break语句结束
2)执行默认执行到末尾语句结束
5)case语句的后面是冒号,表示和switch语句中的表达式进行比较
6)跳转控制语句: break,continue,retrun (后面讲)

3、循环结构语句
1)for循环
for(初始化语句;条件语句;步长语句){
循环体语句;
}

执行流程:
初始化语句:给当前变量进行赋值,如果满足条件语句,那么执行循环体语句

执行步长语句,对变量进行自增或自减---->在对条件语句进行判断,如果满足条件,再次执行循环体---->步长语句直到不满足条件为止,循环语句结束...

循环语句的注意事项:
1)条件语句,不管是一个简单的表达式还是复杂的表达式,都是boolean类型
2)初始化语句,和条件表语句后面都要带上分号;

2)    while循环
;格式:
基本格式:
while(条件表达式){
循环语句体;

    } 扩展格式:(优于基本格式)    初始化语句 ;    while(条件表达式){        循环体语句;        步长语句;    } 执行流程:        初始化语句对变量进行赋值,如果满足条件表达式,那么执行循环体语句,执行步长语句---->继续判断是否满足条件      --->满足条件,继续执行循环体语句,步长语句---->当满足不足条件为止结束

while循环和for循环的区别?

1)如果从内存角度考虑,for循环要优于while循环,for循环语句执行完毕之后,变量会及时被GC垃圾回收期回收掉    while循环,它可以去访问循环语句中的变量2)根据具体需求具体分析,    如果循环次数明确的情况下,应用for循环      如果不知道要循环多少次,应该去使用while循环            举例:吃葡萄

3)  do-whle:
基本格式
do{
循环体语句
}whiel(判断条件语句) ;

扩展格式:
初始化语句;
do{
循环体语句;
控制体语句;(步长语句)
}while(条件判断语句) ;
循环结构语句
for循环,while循环,do-while循环,他们之间的区别?

    do-while和前两者之间最大的区别:            循环体语句至少执行一次

实际开发:优先考虑 for循环,其次while循环,最后,do-while

4)  for循环嵌套:
格式
for(){
for(){
}
}
4、 跳转控制语句:

break:表示中断,结束的意思,结束语句;

break可以单独使用吗?
break:不能单独使用,一般在switch语句,或者循环语句中使用
continue:继续的意思,跳出当前循环,直接进入一次循环

continue:单独是不能使用的,在循环语句中使用多

跳转控制语句:
retrun  :方法的返回值 ,会带回一个结果

(七)JAVA中的方法
方法:完成特定功能的代码块

方法的格式:                                形式参数
public static  返回值 方法名(参数类型1 变量1,参数类型2 变量名){
return ...
}
方法格式的解释:
public static:方法是静态的,并且是公共的方法  (今天写方法,public static)
返回值(数据类型): 根据具体的需求,返回什么类型,用什么样的数据类型结束
方法名:给当前代码块起名字,命名规则:单个单词:字母全小写 多个单词:第一个单词全部小写,第二个单词开始每个单词首字母大写
return: 将当前代码的计算的结果,返回给调用者

有返回值类型的方法:
需求:
计算两个数据的和

方法调用:
1)单独调用
单独调用,没有意义,没有输出结果
2)输出调用
直接输出了结果,写死了,不能对结果进行操作
3)赋值调用 :有返回值类型的方法,推荐使用赋值调用,它可以结果进一步操作
int result = sum(a,b) ;
定义一个方法的注意事项:
1)方法和方法是平级关系,一个方法中不能再定义个方法
2)定义一个方法 时候,形式参数必须有数据类型,否则有问题
3)在主main()中,调用方法的时候,实际参数中不需要带数据类型的
4)有大括号的地方,不能有分号,有分号的地方不能有大括号
Java中定义方法的格式
public static 返回值  方法名(形式参数列表){
return  ;
}

当前需求中,形状是直接输出在控制台的,没有具体的返回值,但是又要符合方法规范,--->关键字:void替代语法中 返回值

单独调用
没有具体的返回值的方法,适合单独调用
输出调用
错误
赋值调用
错误

命名规则:起名字-->见名知意
Java就给提供一个专业名词:给多个方法起同一个名字,还不报错---->方法重载          (面向对象:继承中讲方法重写)

方法重载:指的是方法名相同,参数不同,返回值没有关系        参数不同:            1)参数个数不同            2)参数类型不同            方法和C语言中的函数功能相似!**

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP