补充JAVA基本数据类性的转换:

补充JAVA基本数据类性的转换:

一. 数据类型:

在这里插入图片描述

说明:(大小是指数据类型的字节大小)。
①大转小需要进行数值类型的强制转化。
②小转大可以直接转。
③转小,数据可能会丢失
(小杯子的水给大杯倒,很容易;但大杯的水给小杯倒会溢出,丢失)
要求
先熟记各种类型的字节大小,和取值范围

二.数据基本类型的字节大小及取值范围:

请查看上一篇:变量概念及类型详细解析及转换

注意:
整数类型默认变量为int型;

浮点默认变量为double型;

int类型与char类型的字节大小相同,可以直接转。

三.举例说明并分析:

public class Text {
    public static void main(String[] args) {
        byte height=100;//默认类型为int但未超出byte的范围
        //byte转short,小转大。
        short heightOne=height;
        //int转short,大转小
        int number = 1;
        short numberOne = (short) number;//强制转换需要给变量值前加所要强转的类型
        //short转long,小转大。
        short wight=200;
        long wightOne=wight;
        //long转int,大转小
        long length=1000;
        int lengthTwo=(int)length;
        //char转int,同大小
        char character='c';
        int characterOne=character;
        //int转char,同大小
        int theInteger=10;
        char theIntegerTwo= (char) theInteger;
        //默认为Double,转float,大转小
        float decimal= (float) 10.1;//float类型特殊,可以直接给变量值后加f进行强制转化,float decimal=10.1f;
        //float转float
        float decimalTwo=decimal;
        //double转float,大转小
        double doubleTwo=1000.55;
        float dobleTwos=(float) doubleTwo;
		//结果==>100
        System.out.println(heightOne);
        //结果==>1
        System.out.println(numberOne);
        //结果==>200
        System.out.println(wightOne);
        //结果==>1000
        System.out.println(lengthTwo);
        //结果==>99
        System.out.println(characterOne);
        //结果==>??
        System.out.println(theIntegerTwo);
        //结果==>10.1
        System.out.println(decimalTwo);
        //结果==>1000.55
        System.out.println(dobleTwos);

    }
}

四.扩展:

题目:司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。

public class Text{
	public static void main(String[] args) {
	//键盘扫描,进行接收
		Scanner scanner1 = new Scanner(System.in);
		//打印语句块
		System.out.println("请输入一个四位数的整数");
		//接收并赋值给a
		int a=scanner1.nextInt();
		int a1=((a%10)+5)%10;//个位数+5/10
		int a2=((a%100/10)+5)%10;//十位数+5/10
		int a3=((a%1000/100)+5)%10;//百位数+5/10
		int a4=((a%10000/1000)+5)%10;//千位数+5/10
		//把结果赋值给results,并且调换位置
		int results=a4*1000+a3*100+a2*10+a1;
		//打印输出
		System.out.println("最终结果为"+results);

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值