Java-数据类型转换、运算符、方法入门-第2节

学习目标:

  • 掌握数据类型的转换方法
  • 会用java中的运算符
  • 简单的了解方法

学习内容:

一、类型转换
1、自动类型转换(隐式)
  • 特点:代码不需要进行特殊处理,自动完成
  • 规则:数据范围从小到大
2、强制类型转换(显式)
  • 特点:代码需要进行特殊处理,不能自动完成
  • 格式:范围小的类型 范围小的变量 = (范围小的变量)原本范围大的数据
3、注意事项:
  • 强制类型转换不推荐使用,会造成数据溢出,影响精度
  • byte/short/char三种类型可以发生数学运算,先提升为int类型,然后进行“+”运算
  • boolean类型不能进行数据类型转换
二、数学运算
1、注意事项:
  • 一旦运算中有不同类型的数据,那么结果将会是数据范围大的数据类型
  • 任何数据类型和字符串相加都会变成字符串类型
  • 赋值运算隐含强制类型转换
三、逻辑运算
1、逻辑运算符号:
  • 与 &&;
  • 或 ||;
  • 非 !;
2、&& 和 || 具有短路效果,能够提前判断,就不执行后面的代码,提高效率
四、三元运算符
1、格式:
  • 数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
  • int max = a>b ? a:b;
2、注意事项
  • 必须同时保证表达式A和表达式B都符合左侧数据类型的要求
  • 三元运算符结果必须被使用
五、方法入门
1、方法概述
  • 将一类操作放到一个方法中,使代码更加清晰明了
2、注意事项
  • 方法定义的先后顺序无所谓
  • 方法的定义不能产生嵌套包含关系
  • 方法定义好需要调用才能被执行
六、jshell工具
1、直接在cmd中输入名称jshell
2、退出直接输入/exit
七、编译器的两点优化
1、对于byte、short、char三种类型来说,如果右侧的赋值没有超过左侧范围,编译器会自动隐含的强转如果超出左侧范围,报错;
2、再给变量赋值时,如果右侧表达式都是常量,编译的时候编译器javac会直接计算常量表达式,在.class文件中直接就是计算后的值,称为编译器的常量优化。

学习时间:

一天

学习产出:

1、Hello World程序
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello,World!!!");
        System.out.println("Hello,World!!!");
        System.out.println("Hello,World!!!");
        System.out.println("a");
    }
}

2、方法1

package mypackage.day01.demo01;

public class Demo01Method {
    public static void main(String[] args) {
        printMethod();
    }

    public static void printMethod() {
        for (int j = 0; j < 5; j++) {
            for (int i=1;i <= 20;i++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

3、方法2

package mypackage.day01.demo01;

public class Demo02Method {
    public static void main(String[] args) {
//        单独调用
        sum(10,20);
        System.out.println("=====================");
//        打印调用
        System.out.println(sum(10,30));
        System.out.println("======================");
//        复制调用
        int number = sum(20,30);
        System.out.println(number);
        System.out.println("=======================");
    }

    public static int sum(int a, int b) {
        int result = a + b;
        return result;
    }
}

4、方法重载

package mypackage.day01.demo02;

public class Demo01MethodOverLoad {
    public static void main(String[] args) {
        myPrint((byte) 1);
        myPrint((short) 1);
        myPrint((int) 1);
        myPrint((long) 1);
        myPrint((char) 1);
    }
    public static void myPrint(byte num) {
        System.out.println("byte类型");
        System.out.println(num);
    }
    public static void myPrint(short num) {
        System.out.println("short类型");
        System.out.println(num);
    }
    public static void myPrint(int num) {
        System.out.println("int类型");
        System.out.println(num);
    }
    public static void myPrint(long num) {
        System.out.println("long类型");
        System.out.println(num);
    }
    public static void myPrint(char num) {
        System.out.println("char类型");
        System.out.println(num);
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值