Java基础(二)运算符和方法入门
Java的运算符
算术运算符
java中,整数使用以上运算符,无论怎么计算,也不会得到小数
- 在运行自增(++)和自减(--)的运算时,如果(++)或(--)放在操作数的前面,则先进行自增或自减运算再进行其他运输。反之,如果运算符放在操作数的后面,则先进性其他运输再进行自增或自减运算。
- 在进行除法运算时,当除数和被除数都为整数时,得到的结果也是一个整数。如果除法运算有小数参与,得到的结果会时一个小数。
- 在进行取模(%)运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)无关。
- + 符号在字符串中的操作: + 符号在遇到字符串的时候,表示连接、拼接的含义。
赋值运算符
赋值运算符,就是将符号右边的值,赋给左边的变量。
- java中可以通过一条赋值语句对多个变量赋值。
- 在上一个文章中,在变量赋值时,当两种类型彼此不兼容,或者目标类型取值范围小于源类型,需要进行强制转换。然而在使用+=,-=,*=,/=,%=运算符进行赋值时,强制类型转换会自动完成。
比较运算符
- 比较运算符,是两个数据之间进行比较的运算,运算结果都是布尔值 true 或者 false 。
逻辑运算符
- 逻辑运算符,是用来连接两个布尔类型结果的运算符,运算结果都是布尔值 true 或者 false。
- &与&&都表示与操作,但是&不管左边 是true还是false,右边表达式都会进行运算。&&进行运算时,左边如果是false,右边表达式就不会进行运算
- |与||都表示或操作,但是|不管左边 是true还是false,右边表达式都会进行运算。||进行运算时,左边如果是true,右边表达式就不会进行运算
位运算符
位逻辑运算符
位移运算符
复合位赋值运算符
三元运算符
三元运算符格式:
数据类型 变量名 = 布尔类型表达式?结果1:结果2
三元运算符计算方式:
- 布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。
- 布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量。
public static void main(String[] args) {
int i = (1 == 2 ? 100 : 200);
System.out.println(i);//200
int j = (3 <= 4 ? 500 : 600);
System.out.println(j);//500
}
运算符的优先级
方法入门
概述
我们在学习运算符的时候,都为每个运算符单独的创建一个新的类和main方法,我们会发现这样编写代码非常的繁琐,而且 重复的代码过多。能否避免这些重复的代码呢,就需要使用方法来实现。
- 方法:就是将一个功能抽取出来,把代码单独定义在一个大括号内,形成一个单独的功能。
当我们需要这个功能的时候,就可以去调用。这样即实现了代码的复用性,也解决了代码冗余的现象。
方法的定义
定义格式:
修饰符 返回值类型 方法名 (参数列表){
代码...
return ;
}
- 定义格式解释:
- 修饰符: 目前固定写法 public static 。
- 返回值类型: 目前固定写法 void ,其他返回值类型在后面的课程讲解。
- 方法名:为我们定义的方法起名,满足标识符的规范,用来调用方法。
- 参数列表: 目前无参数, 带有参数的方法在后面的课程讲解。
- return:方法结束。因为返回值类型是void,方法大括号内的return可以不写。
举例
public static void methodName(){
System.out.println("这是一个方法");
}
方法的调用
- 直接调用:直接写方法名调用
public static void main(String[] args) {
methodName();
}
public static void methodName(){
System.out.println("这是一个方法");
}
- 赋值调用:调用方法,在方法前面定义变量,接收方返回值
public static void main(String[] args) {
int sum = getSum(5,6);
System.out.println(sum);
}
public static int getSum(int a,int b) {
return a + b;
}
- 输出语句调用:在输出语句中调用方法
public static void main(String[] args) {
System.out.println(getSum(5,6));
}
public static int getSum(int a,int b) {
return a + b;
}
不能用输出语句调用 void 类型的方法。因为方法执行后没有结果,也就打印不出任何内容。
public static void main(String[] args) {
System.out.println(printHello());// 错误,不能输出语句调用void类型方法
}
public static void printHello() {
System.out.println("Hello");
}
方法重载
- 方法重载:指在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可,与修饰符和返 回值类型无关。
- 参数列表:个数不同,数据类型不同,顺序不同。
- 重载方法调用:JVM通过方法的参数列表,调用不同的方法。
注意事项:
- 方法必须定义在一类中方法外
- 方法不能定义在另一个方法的里面
public class Demo {
public static void main(String[] args){
}
//正确写法,类中,main方法外面可以定义方法
public static void method(){}
}
public class Demo {
public static void main(String[] args){
//错误写法,一个方法不能定义在另一方法内部
public static void method(){}
}
}