学习java day3笔记

1.运算符:对字面量或者变量进行操作的符号

表达式:用运算符把字面量或者变量连接起来,符合Java语法的式子就可以成为表达式,不同运算符连接的表达式体现的是不同类型的表达式

2.算术运算符:+,-,*,/,%

注:在代码中,如果有小数参与运算,结果有可能不准确,整数参与运算,结果只能得到整数

数字相加:数字进行运算时,数据类型不一样不能运算,需要转换成一样的才可以

数据转换的分类:隐式转换:取值范围小的数值=>大的数值自动类型提升

                             强制转换:取值范围大的数值=>小的数值目标数据类型 变量名=(目标数据)被强制转换数据。注:强制转换是可能会超出范围导致丢失精度

注:byte,short,char在数据运算中,会先提升为int,再运算                                                                 byte<short<int<long<float<double

字符串的“+”操作:当“+”操作中出现字符串是,这个“+”是字符串连接符,而不是算术运算符了。会将前后的数据进行拼接,并产生一个新的字符串

                              连续进行“+”操作时,从左到右逐个执行

字符的+操作:当字符+字符/数字时,会把字符通过ASII码表查询到相对应的数字再计算

3.自增自减运算符的基本用法:++ 变量的值加1,-- 变量的值减1单独使用时可以放在变量前也可以放在变量后

参与计算时:先用后加 a++,先加后用 ++a

4.赋值运算符分类:=(赋值),+=(加后赋值),-=(减后赋值),*=(乘后赋值),/=(除后赋值),%=(除余后赋值)

5.关系运算符分类(比较运算符)结果都是boolean类的:==(相等),!=(不相等),>(大于),>=(大于等于),<(小于),<=(小于等于)

6.逻辑运算符:&(逻辑与),|(逻辑或),^(逻辑异或)相同为false,不同为true,!(逻辑非)取反,要么不写,要么只写一次

7.短路逻辑符:&&,||结果相同,但是有短路效果

注:&,|无论左边是true还是false,右边都要执行                                                                                   &&,||如果左边能确定整个表达式的结果,右边都不执行

8.三元运算符:可以进行判断,根据判断的结果得到不同的内容

三元运算符格式:关系表达式?表达式1:表达式2;

int max = a>b?a:b;
//把三元运算符的结果赋值给一个变量

System.out.println(a>b?a:b);
//把三元运算符的结果直接打印

计算规则:首先计算关系表达式的值,如果值为true,表达式的值就是运算结果;如果值为false,表达式2的值就是运算结果

注:运算中()大于一切

9.原码:十进制数据的二进制表现形式,最左边是符号位,0为正,1为负

原码的弊端:利用原码进行计算时,如果是正数运算是没有问题的;如果是负数计算时,结果出错,实际运算的方向和正确运算方向相反

反码:为了解决原码不能计算负数出现的

反码的计算规则:正数的反码不变,负数的反码在原码的基础上,符号位不变,数值取反

反码的弊端:负数运算时,如果结果跨0,跟实际结果会有1的误差

补码:为了解决负数计算时跨0的问题而出现的

补码的计算规则:正数的补码不变,负数的补码在反码的基础上加1。同时补码多记录一个特殊的值-128,该字节在1个数据下,没有原码和反码

注:计算机中的存储和计算都是以补码的形式进行的

10.其他运算符:《向左移动,低位补0;》向右移动,高位补0或1;>>>无符号右移,向右移动,高位补0

 分别输出数字的个位,十位,百位

import java.util.Scanner;
public class Test1 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入一个三位数:");
        int a=sc.nextInt();
        int ge=a%10;
        int shi=a/10%10;
        int bai=a/100%10;
        System.out.println("这个数字个位是:"+ge);
        System.out.println("这个数字十位是:"+shi);
        System.out.println("这个数字百位是:"+bai);
    }
}

两只老虎体重是否相同

import java.util.Scanner;
public class Test4 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入第一只老虎的重量:");
        double weight1= sc.nextDouble();
        System.out.println("请输入第二只老虎的重量:");
        double weight2= sc.nextDouble();
        String result=weight1==weight2?"相同":"不同";
        System.out.println(result);
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值