【无标题】

Java第三、四周学习内容:

7、逻辑运算符:
&:与
|:或
!:非
^:逻辑异或:前后条件的结果相同,直接返回false,前后条件的结果不同,才返回true。
&&:短路与:判断结果与&相同,过程不同:左边为false则右边不执行。
||:短路或:判断结果与|相同,过程不同:左边为true则右边不执行
8、三元运算符,运算符优先级
格式:条件表达式?值1:值2;
执行流程:首先计算关系表达式的值,如果值为true,返回值为1;如果值为false,返回值为2;
9、switch分支
<1、先执行表达式的值,再拿这个值与case后的值进行匹配。
<2、与哪个case后的值匹配为true就执行哪个case块后的代码,遇到break就跳出switch分支。
<3、如果全部case的值与之匹配都是false,则执行defult块的代码。
10、if、switch比较,以及各自适应什么业务场景?
<1、if在功能上远强大于switch。
<2、当条件是区间的时候,应该用switch分支结构。
<3、当条件是与一个一个的值进行比较的时候,switch分支更合适:格式良好、性能良好、代码优雅。
11、使用switch分支的注意事项
<1、表达类型只能是byte、shrot、int、char,jdk5开始支持枚举,jdk7开始支持String、不支持double、float、long。
<2、case给出的值不能重复,而且只能是字面量,不能是变量。
<3、正常使用switch的时候,不要忘记写break,否则会出现穿透现象。
12、跳转关键字
break:跳出并结束当前循环的执行
continue:用于跳出当前循环的当次执行,直接进入循环的下一次执行。
注意事项:
break:只能用于结束所在循环,或者结束所在switch分支的执行。
continue:只能在循环中进行使用。
13、数组
<1、静态初始化数组:定义数组的时候直接给数组赋值。
<2、基本形式:数据类型[] 数组名=new 数据类型[]{元素1,元素2,元素3...}
int[] arg=new int[]{1,2,3,4,5,6,...}
简化格式:数据类型[] 数组名={元素1,元素2...}
    int[] arg={1,2,3,4....}
注意:<1、也可以写成:数据类型 数组名[]=new 数据类型[]
        int arg[]=new int[]
     <2、什么类型的数组只能存放什么类型的数据。
     <3、如果某个数组变量储存的地址是null,那么该变量将不再指向任何数组变量。
14、多个数组变量指向同一个数组数据的原因
<1、多个数组变量中储存的是同一个数组对象的地址。
<2、多个变量修改的都是同一个数组对象的数据。
15、Debug工具的使用
<1、IDEA自带的断点调试工具,可以控制代码从断点一行一行开始执行,然后详细观看程序执行的情况
16、方法
<1、什么是方法:方法是一种语法结构,它可以把一段代码封装成一个功能,以便重复调用。
方法的完整格式
修饰符 返回值类型 方法名(形参列表){
            方法体代码(需要执行的功能代码)
            return返回值;
}
注意:
<1、方法申明了具体的返回值类型,内部必须使用return返回对应类型的数据。
<2、形参列表可以有多个,甚至可以没有;如果有多个形参,多个形参必须使用“,”隔开,且不能初始化值。
<3、如果方法不需要返回值数据,返回值类型必须申明成void(无返回值申明),此时方法内部不可以使用return返回数据。
<4、方法如果不需要接收数据,则不需要定义形参,且调用方法时也不可以传数据给方法了。
没有参数,且没有返回值类型(void)申明的方法,称为无参数、无返回值的方法,以此类推。
方法使用时的常见问题
方法在类中的位置放前放后无所谓,但一个方法不能定义在另一个方法里面。
方法的返回值类型写void(无返回申明)时,方法内不能使用return返回数据,如果方法的返回值类型写了具体类型,方法内部则必须使用return返回对应类型的数据。
return语句的下面不能编写代码,属于无效的代码,执行不到这儿。
方法不调用就不会执行,调用方法时,传给方法的数据,必须严格匹配方法的参数情况。
调用有返回值的方法,有三种方式:1、可以定义变量接收结果2、或者直接输出调用,3、甚至直接调用;
调用无返回值的方法,只有一种方式:1、直接调用。
17、设计方法的技巧,主要关注三方面:
<1、方法是否需要接收数据进行处理?
<2、方法是否需要返回数据?
<3、方法要处理业务(编程能力)。
18、Java的参数传递机制
<1、Java的参数传递机制是:值传递
<<1、所谓值传递:指的是在传输实参个方法形参的时候,传输的是实参变量中存储的值的副本。
<<2、实参:在方法内部定义的变量。
<<3、形参定义方法时“(...)”中声明的参数。
18、基本类型和引用类型的参数在传递的时候有什么不同?
<1、都是值传递.
<2、基本类型的参数传输存储的数据值。
<3、引用类型的参数传输存储的地址。
19、this关键字
<1、this是什么:this就是一个变量,可以用在方法中,来拿到当前对象。
this的应用场景:this主要用来解决变量名冲突问题的。
20、构造器
<1、构造器的特点:创建对象时,对象会去调用构造器。
<2、构造器的常见应用场景:创建对象时,同时完成对对象成员变量(属性)的初始化赋值
<3、构造器的注意事项:<<1、类在设计时,如果不写构造器,Java是会为类自动生成一个构造器的。
            <<2、一旦定义有了参数构造器,Java就不会帮我们的类自动生成无参数构造器            了,此时就建议自己手写一个无参数构造器出来了。
21、封装
<1、什么是封装:就是用类设计对象处理某一个事物的数据时,应该要把处理的数据,以及处理这些数据的方法,设计到一个对象中去。
<2、封装的设计规范:合理隐藏、合理暴露。
<3、代码层面如何控制对象的成员公开或隐藏:
<<1、公开成员,可以使用public进行修饰。
<<2、隐藏成员,使用private进行修饰。
22、实体JavaBean
<1、实体类是什么:是一种特殊形式的类。
<2、这个类中的成员变量都要私有,并且要对外提供相应的getXxx,setXxx方法。
<3、类中必须有一个公共的无参的构造器。
<4、实体类的应用场景:实体类只负责数据存取,而对数据的处理交给其他类来完成,以实现数据和数据业务处理相分离。
23、成员变量、局部变量的区别
区别                                                  成员变量                                                          局部变量
类中位置不同                                      类中,方法外                                                    常见于方法中
初始化值不同                                      有默认值,不需要初始化赋值                               没有默认值,使用之前必须完成赋值                                  内存位置不同                                      堆内存                                                             栈内存
作用域不同                                         整个对象                                                          在所归属的大括号中
生命周期不同                                      与对象共同死亡                                                 随着方法的调用而生,随着方法的运行结束而亡
24、定义类的格式
public class 类名{
1、成员变量(代表属性,一般是名词):数据类型 名称
2、成员方法(代表行为,一般是动词)
3、构造器()
4、代码块
5、内部类
}
25、创建对象类名 对象名 = new 构造器();
26、对象名怎么使用:对象名.成员变量
                  对象名.成员方法
27、常用API
<1、同一个包下的程序可以直接访问。
<2、访问其他包下的程序,必须导包才可以访问。
<3、自己的程序中调用Java提供的程序,也需要先导包才可以使用。注意:Java.lang包下的程序是不需要我们导包的,可以直接使用。
<4、访问多个其他包下的程序,这些程序名又一样的情况下,默认只能导入一个程序,另一个程序必须带包明和类名来访问。
28、String
Java.lang.String代表字符串 封装字符串数据 处理字符串的方法。
<1、创建对象
创建对象封装字符串数据的方式
<<1、方法一:Java程序中的所有字符串文字(例如“abc”)都为此类的对象。
eg:String name=“彭于晏”;
<<2、方法二:调用String类的构造器初始化字符串对象。
构造器                                                                                                       说明
public String()                                            创建一个空白字符串对象,不含有任何内容
public String(String original)                             根据传入的字符串内容,来创建字符串对象
public String(char[] chars)                                根据字符数组的内容,来创建字符串对象
public String(byte[] bytes)                                根据字节数组的内容,来创建字符串对象
<2、封装字符串数据
<3、调String的方法
String的常用方法
方法名
public int length()
public char charAt(int index)
public char[] toCharArray():
public boolean equals(Object anObject)
public boolean equalsIgnoreCase(String anotherString)
public String substring(int beginIndex,int endIndex)
public String substring(int beginIndex)
public String replace(CharSequence target, CharSequence replacement)
public boolean contains(CharSequence s)
public boolean startsWith(string prefix)
public String[] split(String regex)
说明
获取字符串的长度返回(就是字符个数)
获取某个索引位置处的字符返回
将当前字符串转换成字符数组返回
判断当前字符串与另一个字符串的内容一样,一样返回true
判断当前字符串与另一个字符串的内容是否一样(忽略大小写)根据开始和结束索引进行截取,得到新的字符串 (包前不包后)从传入的索引处截取,截取到末尾,得到新的字符串返回
使用新值,将字符串中的旧值替换,得到新的字符串
判断字符串中是否包含了某个字符串
判断字符串是否以某个字符串内容开头,开头返回true,反之把字符串按照某个字符串内容分割,并返回字符串数组回来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值