021- Java语言基础-基本数据类型的一些问题和总结
我们输入以下代码:
public class DataType07
{
public static void main(String[]args){ byte b1 = 4;
byte b2 = 5;
byte b3 = b2 + b1;
System.out.println(b3);
}
}
在命令行编译如下:

我们发现报错了,不兼容的类型,程序运行的时候,会将b1和b2转换成iint类型,然后再做加法运算。
所以我们应该这样做,输入以下代码:
public class DataType07
{
public static void main(String[]args){ byte b1 = 4;
byte b2 = 5;
//byte b3 = b2 + b1; error 不兼容的类型,程序运行的时候,会将b1和b2转换成iint类型,然后再做加法运算。
//System.out.println(b3); byte b3 = (byte)(b1+b2);
System.out.println(b3); }
}
命令行解释如下:

我们是把b1+b2强制转换成了byte类型。
在输入以下这段代码:
public class DataType07
{
public static void main(String[]args){ byte b1 = 4;
byte b2 = 5;
//byte b3 = b2 + b1; error 不兼容的类型,程序运行的时候,会将b1和b2转换成iint类型,然后再做加法运算。
//System.out.println(b3); byte b3 = (byte)(b1+b2);
System.out.println(b3); byte b4 = 10;
short s1 = 5;
int i1 = b4 + s1 ;
System.out.println(i1); }
}
命令行结果为:

我们可以看到是没有报错的,因为程序会默认把byte类型的数字与short类型的数字自动转换成int类型。
然后看一下代码:
public class DataType07
{
public static void main(String[]args){ byte b1 = 4;
byte b2 = 5;
//byte b3 = b2 + b1; error 不兼容的类型,程序运行的时候,会将b1和b2转换成iint类型,然后再做加法运算。
//System.out.println(b3); byte b3 = (byte)(b1+b2);
System.out.println(b3); byte b4 = 10;
byte s1 = 5;
int i1 = b4 + s1 ;
System.out.println(i1); char c1 = 'a';//97
int i2 = c1+100;
System.out.println(i2) //197
System.out.println((byte)c1); }
}
总结:
关于基本数据类型转换规则:
1.8种基本数据类型除boolean类型之外都可以相互转换.
2.小容量向大容量转换叫做自动类型转换:byte<short(char)<int<long<float<double
3.byte,short,char做混合运算的时候,各自都先转换成int在做运算
4.大容量向小容量转换是强制类型转换,需要加强制转换符,编译虽然通过,运行期可能损失精度。谨慎使用。
5.如果整数没有超出byte,short,char的取值范围,可以直接将这个整数赋值给byte,short,char
6.多种数据类型做混合运算,先转换成容量最大的那种再做运算。
021- Java语言基础-基本数据类型的一些问题和总结的更多相关文章
- day02<Java语言基础+>
Java语言基础(常量的概述和使用) Java语言基础(进制概述和二,八,十六进制图解) Java语言基础(不同进制数据的表现形式) Java语言基础(任意进制到十进制的转换图解) Java语言基础( ...
- Java学习总结(二)----Java语言基础
1. Java语言基础 2.1 关键字 定义:被java语言赋予特殊含义的单词 特点:关键字中的字母都为小写 用于定义数据类型的关键字 class,interface,byte,short,i ...
- java语言基础02
一.Java语言基础(常量的概述和使用)(掌握) 1:什么是常量 就是在程序的执行过程中其值不发生改变的量. 2:Java中常量的分类 (1):字面值常量 (2):自定义常量(面向对象部分讲解) 3: ...
- Java之--Java语言基础组成—数组
Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...
- Java之--Java语言基础组成—函数
Java语言基础组成-函数 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的函数,函数 ...
- Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)
Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...
- Java语言基础(四)
Java语言基础(四) 一.基本数据类型(8) byte 8位 使用较少,一般用于网络传输: -128-+127 short 16位 不常用 -32768-+32767 int 32位 常用 ...
- Java入门篇(二)——Java语言基础(下)
上篇说到Java中的变量与常量,接下来就是简单的计算了,首先需要了解一下Java中的运算符. 六.运算符 1. 赋值运算符 赋值运算符即"=",是一个二元运算符(即对两个操作数进行 ...
- 第二十六节:复习Java语言基础-Java的概述,匿名对象,封装,构造函数
Java基础 Java语言概述 Java语言 语言 描述 javaee 企业版 javase 标准版 javame 小型版 JDK JDK(Java开发工具包) Java语言 语言 Java语言 Ja ...
- 第二十一节:Java语言基础-关键字,标识符,注释,常量和变量,运算符
Java语言基础-关键字,标识符,注解,常量和变量,运算符 class Demo { public static void main(String[] args){ System.out.printl ...
随机推荐
- gRPC-go源码(2):ClientConn
摘要 在上一篇文章中,我们聊了聊gRPC是怎么管理一条从Client到Server的连接的. 我们聊到了gRPC拥有Resolver,用来解析地址:拥有Balancer,用来做负载均衡. 在这一篇文章 ...
- 一个页面中多个window.onload = function(){}冲突问题解决思路
转: 一个页面中多个window.onload = function(){}冲突问题解决思路 一个页面中多个window.onload = function(){}冲突问题解决思路 参考文章: (1) ...
- 微信小程序进入广告实现
<view class="container"> <image src="../../imgs/swiper1.jpg"></im ...
- pytorch(06)autograd与逻辑回归
autograd与逻辑回归 自动求导系统中两个常用的方法: torch.autograd.backward and torch.autograd.grad 演示理解一阶导数.二阶导数的求导过程 理解自 ...
- C#中的字段与属性的区别及属性的作用
C#中的字段与属性的区别及属性的作用 先上代码 public class Employee { //字段 private string name; //属性 public string Name { ...
- gpfdist原理解析
gpfdist原理解析 前言:gpfdist作为批量向postgresql写入数据的工具,了解其内部原理有助于正确使用以及提供更合适的数据同步方案.文章先简要介绍gpfdist的整体流程,然后针对重要 ...
- Linux普通用户安装配置mysql(非root权限)
Linux普通用户安装配置mysql(非root权限) 说明:在实际工作中,公司内网的机器我们一般没有root权限,也没有连网,最近参考网上的资料使用一般的账户成功安装mysql,记录如下 Linux ...
- JVM之调优及常见场景分析
JVM调优 GC调优是最后要做的工作,GC调优的目的可以总结为下面两点: 减少对象晋升到老年代的数量 减少FullGC的执行时间 通过监控排查问题及验证优化结果,可以分为: 命令监控:jps.jinf ...
- java.lang.IllegalArgumentException: MALFORMED
java.lang.IllegalArgumentException: MALFORMED at java.util.zip.ZipCoder.toString(ZipCoder.java:58) a ...
- XML数据持久化学习笔记
一.XML基础语法 1.XML结构:XML是一种树结构的文本 2.XML注释:格式:<!--在其中书写注释-->,在注释中可以单行注释也可以多行注释 3.固定内容:<?xml ver ...