1.数据类型的转换
a.默认转换
小容量类型转大容量类型
(byte,short,char--->int--->long--->float--->double)由小到大排列
b.强制转换
大容量类型转小容量类型
可能出现的问题
1.溢出: int x=258; byte y=(byte)x
2.精度降低: float z=10.55f; int zz=(int)z;
2.运算符
运算符
+: 加法运算(数值+数值); 连接(数值+字符串)(字符串+字符串);正号;
-:减法;负号;
*:乘号 ; /:除号; %:取余;
++ ; --: e++(--):先运算后自加(自减) (--)++e:先自加(自减)后运算
比较运算符
= =; != :用于数值与数值之间的比较,还可以用布尔类型和布尔类型,还可以用于引用类型
>; < . >=; <= :用于数值与数值之间
逻辑运算符
&:逻辑与; 遇到false后,后面表达式还会执行
&&:逻辑与(短路与); 遇到第一表达式是false后,后面表达式不执行
| :逻辑或;遇到第一表达式是true后,后面表达式还会执行
|| :逻辑或(短路或) 遇到第一表达式是true后,后面表达式不执行
! :逻辑非,取反
^ :逻辑异或 相同为假,不同为真
赋值运算符
"=";赋值时,注意左右两边数据类型一致,不同时要遵循数据转换规则
+=; -= ; *= ;/= ; %= :存在隐式类型转换
条件运算符
"? :" :结果+(条件表达式)?表达式一:表达式二
相当于if else
位运算符
<<:左移 左移一位相当于乘2
>>:右移 右移一位相当于除2 带符号的位移
高位移动后(正数补1,负数补0)
>>>:无符号右移 右移一位相当于除2
高位移动后(默认补0)
& :与 |:或
^:异或
~:非
3.Java中的方法
定义
方法等同于函数,可以调用重复使用,是解决一类问题步骤的组合,表示一种功能和行为(方法必须写在类中 .Java文件)
方法如何定义
public static void menu(){};
public:访问权限
static:静态的,直接可以使用类名调用
void:返回值类型
menu: 方法名
(): 参数列表
{}: 方法体
例子
import java.util.Scanner;
public class project_02 {
static Scanner scanner=new Scanner(System.in);
static int money=10000;//本金
static String s ="";//收入
static String z="";//支出
public static void main(String[] args) {
out:do{
project_02.menu();
int select= scanner.nextInt();
switch (select){
case 1:{
project_02.printmx();
break;
}
case 2:{
project_02.Income();
break;
}
case 3:{
project_02.Disburse();
break;
}
case 4:{
break out;
}
default:
System.out.println("选项有误!");
}
}while(true);
}
//菜单
public static void menu(){
System.out.println("------------家庭收支明细------------");
System.out.println("1.收支明细");
System.out.println("2.登记收入");
System.out.println("3.登记支出");
System.out.println("4.退出");
System.out.println("请选择(1-4):");
System.out.println("请输入操作");
}
//打印
public static void printmx(){
System.out.println("本金为:"+money);
System.out.println("收入为:"+s);
System.out.println("支出为:"+z);
}
//收入
public static void Income(){
System.out.println("请输入收入:");
int income=scanner.nextInt();
System.out.println("请输入收入明细:");
String mx=scanner.next();
money+=income;
s+=mx+":"+income+"\n";
}
//支出
public static void Disburse(){
System.out.println("请输入支出:");
int disburse= scanner.nextInt();
System.out.println("请输入明细:");
String MX=scanner.next();
money-=disburse;
z+=MX+":"+disburse+"\n";
}
}