初学JAVA笔记整理02

本文是关于Java初学者的学习笔记,重点介绍了数据类型的自动转换和强制转换,包括转换规则、注意事项和案例分析。此外,还详细讲解了运算符的定义和算术运算符的使用,并探讨了分支结构,如if、if...else、if...else if...else和switch case语句的定义、语法及应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,数据类型的转化

       ~~~~~~       在Java程序中要求参与计算的数据,必须保持数据类型的一致,当数据不一致的时候就会发生数据类型的转换。数据类型转换有自动转换(影式转换)和强制转换。

1,自动转换

定义

       ~~~~~~       将取值范围小的数据类型转换成取值范围大的数据类型

遵循的原理

byte < short / char < int < long < float < double

注意事项

       ~~~~~~       1,在计算机运算过程中,会自动找到最高的数据类型,然后把其他的数据类型转化为表达式中最高的数据类型。
       ~~~~~~       2,对于byte char short 这三种数据类型来说,只要在他的取值范围内,赋值值不用转换,但是在其运算时要转换成int来运算。
       ~~~~~~       3.任何浮点类型不管占用多少个字符,都比整数类型容量大

2,强制转化

定义

       ~~~~~~       强行将数据类型范围大的变量转换成范围小的变量

格式

       ~~~~~~       范围小的数据类型 变量 = (范围小的数据类型) 变量

注意事项

       ~~~~~~       1,强制转换类型可能会导致数据的丢失
       ~~~~~~       2,浮点型强制转换为整数型会直接导致小数部分丢失

案例分析
public class text04 {
    public static void main(String[] args) {
        //byte转换成int
        byte a=19;
        int b=a;
        System.out.println(b);

        //double转换成int
        int a1=0;
        double b1=3.12;
        a1=(int)b1;
        System.out.println(a1);//3

        byte c=4;
        short c1=7;
        int d=c+c1;
        System.out.println(d);
    }
}

运算符

1,定义

       ~~~~~~       对变量进行操作的符号

2,算数运算符

| 符号 | 作用 | 说明 |
| — | — | — | — |
| + | 加 | 如:2+3=5 |
| - | 减 | 如:8-7=1 |
| * | 乘 | 如:2*3=6 |
| / | 除 | 在Java中两个整数相除商还是整数 如:5/2=2 |
注:两个整数相除商还是整数,因为最高数据类型为整数型

案例分析
public class text05 {
    public static void main(String[] args) {
        //需求:
        //输出619的个位数,十位数,百位数
        int s = 619;
        int a = s % 10;
        int b = s / 10 % 10;
        int c = s / 100;
        System.out.println("619的个位数是:" + a);
        System.out.println("619的十位数是:" + b);
        System.out.println("619的百位数是:" + c);
    }
}
import java.util.Scanner;

public class text06 {
    public static void main(String[] args) {
        // Scanner导包
        //求输入的两个整数之积
        System.out.println("请输入一个整数a");
        int a = new Scanner(System.in).nextInt();
        System.out.println("请输入一个整数b");
        int b = new Scanner(System.in).nextInt();
        int c = a * b;
        System.out.println("输入的两个整数之积为:" + c);
    }
}
public class text07 {
    public static void main(String[] args) {
        //java运算符+的案例
        int a=10;
        System.out.println("ab"+a);//ab10
        System.out.println('a');//a
        System.out.println('a'+a);//107
        System.out.println('a'+"ab");//aab
        System.out.println('a'+""+a);//a10
    }
}

分支结构

1,定义

       ~~~~~~       程序在运行的过程中,根据不同的条件执行不同的语句

2,if结构

if(条件表达式){
                  ~~~~~~~~~~~~~~~~~                  满足条件,执行程序
}

3,if…else结构

if(条件表达式){
                  ~~~~~~~~~~~~~~~~~                  满足条件,执行程序1
}else{
                  ~~~~~~~~~~~~~~~~~                  不满足条件,执行程序2
}

案例分析
import java.util.Scanner;

public class text08 {
    public static void main(String[] args) {
        //输入一个整数,判断它是奇数还是偶数
        System.out.println("请输入一个整数:");
        int number = new Scanner(System.in).nextByte();
        int a = number % 2;
        if (a == 1) {
            System.out.println("它是奇数");
        } else {
            System.out.println("它是偶数");
        }
    }
}

4,if…else if结构(嵌套结构)

if(条件表达式1){
                  ~~~~~~~~~~~~~~~~~                  满足条件1,执行程序1
}else if(条件表达式2){
                  ~~~~~~~~~~~~~~~~~                  满足条件2,执行程序2
}else if(条件表达式3){
                  ~~~~~~~~~~~~~~~~~                  满足条件3,执行程序3
}else{
                  ~~~~~~~~~~~~~~~~~                  以上条件都不满足,执行程序4
}

案例分析
import java.util.Scanner;

public class text09 {
    public static void main(String[] args) {
        //输入一个整数,判断它是正数,负数或者是零
        System.out.println("请输入一个整数:");
        int number =new Scanner(System.in).nextInt();
        if (number>0){
            System.out.println("它是正数");
        }else if(number==0){
            System.out.println("它是零");
        }else{
            System.out.println("它是负数");
        }
    }
}

5,switch case语句

1.定义

在Java中,switch case语句主要是用来判断一个变量与一系列中某个值是否相等,每个值称为一个分支。

2,语法形式

switch(表达式){
       ~~~~~~        case 值1:
               ~~~~~~~~~~~~~~               语块1;
               ~~~~~~~~~~~~~~               break;
       ~~~~~~        case 值2:
               ~~~~~~~~~~~~~~               语块2;
               ~~~~~~~~~~~~~~               break;
       ~~~~~~        case 值3:
               ~~~~~~~~~~~~~~               语块3;
               ~~~~~~~~~~~~~~               break;
         ~~~~~~~~         
       ~~~~~~        case 值n:
               ~~~~~~~~~~~~~~               语块n;
               ~~~~~~~~~~~~~~               break;
       ~~~~~~        default:
               ~~~~~~~~~~~~~~               语块n+1;
               ~~~~~~~~~~~~~~               break;
}

注意事项

       ~~~~~~       1,switch语句的变量类型可以是:byte. short. int 或 char。从Java SE 7开始,switch支持字符串String类型了,同时case标签必须为字符串常量或字面量。
       ~~~~~~       2,case语句中值的数据类型必须与变量的数据类型相同,而且只能是常量或字面量

案例分析
public class text10 {
    public static void main(String[] args) {
        int x=2;
        switch (x){
            case 0:
                System.out.println(0);
                break;
            case 1:
                System.out.println(1);
                break;
            case 2:
                System.out.println(2);
                break;
            default:
                System.out.println("default");
        }
    }
}
public class text11 {
    public static void main(String[] args) {
        //case穿透案例
        //如果switch语句中不写break,从成立的那个case一直穿透到最后  
        //    星期一       写代码
        //    星期二       看电影
        //    星期三       打球
        //    星期四       爬山
        //    星期五       学习
        //    周  末       没有计划
        int day = 4;//表示星期三
        switch (day){
            case 1:
                System.out.println("写代码");
            case 2:
                System.out.println("看电影");
            case 3:
                System.out.println("打球");
            case 4:
                System.out.println("爬山");
            case 5:
                System.out.println("学习");
            default:
                System.out.println("没有计划");
        //输出结果:
        //        爬山
        //        学习        
        //        没有计划

        }
    }
}
扩展:case并列

       ~~~~~~       分支上的值多种情况下:
             ~~~~~~~~~~~~             case 1: case 2: … case n
             ~~~~~~~~~~~~             只要满足其中一个就执行对应的程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值