华杉研发九学习日记1----javase 类型转换、运算符

华杉研发九学习日记1

1.1复习:数据类型转换

//数据类型自动转换  小精度->大精度【提升精度】
int a=23;
System.out.println(a);
double b=a;
System.out.println(b);
//字节小->字节大   【扩大空间】
byte by =22;
System.out.println(by);
short s=by;
System.out.println(s);
int in=s;
System.out.println(in);

long lo=1212411;    //8
float f=lo;         //4   自转   先看精度,再看空间
System.out.println(f);

float f1=22;        //自转
double d1=22.3f;    //自转
double d2=21313L;   //自转
//byte->short->int->long   float->double
//整数类型->浮点类型

char c1=48;
System.out.println(c1);
char c2='a';
int n=c2;
System.out.println(n);

//强转   高->低
int a1=111;
byte b1=(byte)a1;
System.out.println(a1);

int a2=65;
char c3=(char)a2;
System.out.println(c3);

2.1算术运算符

//数据结果类型
//如果参与运算的类型有小数类,数据结果为参与运算的最大的小数类型
//如果只有整数类型,则为最大。。。。。
//byte,short,char一旦参与运算,则会自动提升为int类型。
int a=111;
        //拼接符  +
        System.out.println("a="+a);
        //运算逻辑
        System.out.println("MyAge:"+10+11);     //从左到右先实现字符串和10的拼接,再拼接11
        System.out.println("MyAge:"+(10+11));   //先计算括号里面的10+11,再进行字符串和数字的拼接
        System.out.println(100+100+"yuan");     //从左到右

        //赋值
        byte b=21;
        //b=b+5;    错误  要考虑数据类型的不同,这里的5属于int类型,b无法接收
        b+=5;           //在自身基础上进行值的增加,
        System.out.println(b);

        //自增/减
        int aa=3;                           //++aa 先加1再赋值  aa++先赋值再加1
        int bb=++aa + aa++ + ++aa;          //  4  +  4  +  6
        System.out.println(aa);
        System.out.println(bb);             //  14

2.2逻辑运算符

boolean b1=true;
boolean b2=false;
//  & 逻辑与(一假则假)  |逻辑或(一真则真)
System.out.println(b1&b2);
System.out.println(b1|b2);
//  &&  ||  效率高
System.out.println(b1&&b2);
System.out.println(b1||b2);
// ^    !
System.out.println(b1^b2);  //异或    不同为真,相同为假
System.out.println(!b1);    //取反
2.2.1 逻辑与&:三部曲

​ 1.先判断左侧的结果是true还是false
​ 2.再判断右侧的结果是true还是false
​ 3.整合左右的数据获取结果

2.2.2 短路与&&:不是三部曲

​ 1.判断左边是否false,如是则得结果false,结束
​ 2.再判断右边是否false,如是则得结果false,否则为true

int a=5;
boolean b3=(a<4)&&(++a<6);// 前面为false   ++a不执行
//boolean b3=(a<4)&(++a<6);前后面都执行 a的值发生变化
System.out.println(a);
System.out.println(b3);
1.3.3 使用逻辑运算符进行判断
//定义一个变量并赋值,判断是否是1--100之内的数据
int a =55;
boolean b1=a>=1;
boolean b2=a<=100;
boolean b3=b1&&b2;  //用布尔变量接收判断得到的结果
System.out.println(b3);
System.out.println((a>=1)&&(a<=100));//直接输出逻辑运算得到的结果
if(a>=1&&a<=100){   //用if else  打印结果
    System.out.println("true");
}
else System.out.println("false");

2.3 三目运算符

三目运算符被称为三元运算符,是由三块组成,内部做简单的分支处理
格式:
boolean表达式? true时执行的表达式: false时执行的表达式;

注意:
1.boolean表达式的结果只能是true或false
2.结果的表达式有两个,有且仅有一个表达式被执行
3.三目运算符的结果的数据其实是两个表达式的结果,建议两个表达式的结果的数据类型保持一致

int a=122;
int b=11111;
int max=a>b?a:b;
String mess=(b%2==0)?b+"是偶数":b+"不是偶数";
//String mess=(a>=1)&&(a<=100)?a+"是1--100之内的数据":a+"不是1--100之内的数据";

2.4 Scanner 控制台输入数据

//导包
import java.util.Scanner;
...
//1.创建Scanner对象
Scanner sc=new Scanner(System.in);		//System.in 向机器输入
//2.提示语句
System.out.println("请输入");
//3.接收数据
int a=sc.nextInt(); //接收数据的方法
System.out.println("输入的是"+a);
String mess=(a%2==0)?a+"是偶数":a+"是奇数";
System.out.println(mess);

2.5 位运算符

位运算符就是以二进制的形式来进行计算的符号。
一般先把数字转为二进制,进行计算;计算后再把二进制转为十进制。
& 11得0 | 00得0 ^ 不同为1,相同为0 ~ 取反[~a=-(a+1)]

<< 左移 >> 右移 >>>不带符号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小孤鸡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值