Java基础练习1(数据类型转换)
1.下列代码的输出结果是:()(单选)
public static void main(String[] args){
double money = 3.0;
money -= 2.9;
System.out.println(money);
}
A. 0.1
B. 0.099
C. 0
D.0.10000000000000009
答案:D
解析:2.9转换为二进制数时进行运算,会丢失精度
2.下列数据类型转换,必须进行强制类型转换的是:()
A.byte→int
B.short→long
C.float→double
D.int→char
答案:D
解析:数据类型转换:(反过来转换要强制转型,可能会丢失精度)
char→
byte→short→int→long→float→double
3.下列赋值语句中,正确的是:()
A.byte b1 = 10, b2 = 20; byte b=b1+b2;
B.byte b1 = 10, b2 = 20; byte b=b1+20;
C.byte b1 = 10, b2 = 20; byte b=b2+10;
D.byte b1 = 10; byte b=++b1;
答案:D
详解:两个字面量相加为char或者int
变量和字面量相加只能为int类型
变量和变量相加只能为int
byte 与 byte(或short、char)类型进行运算时会自动转换为int类型,两个int类型相加之后也是int类型,需强制转换为byte类型
拓展运算符(++,--,+=,-=,*=等)不改变数据类型,但可能会丢失精度
byte b = ++b1; 等价于 byte b =(byte)(b1+1);
4.(多选题)
byte b1=1,b2=2,b3,b6,b8;
final byte b4=4,b5=6,b7;
b3=(b1+b2); /*语句1*/
b6= b4+b5; /*语句2*/
b8=(b1+b4); /*语句3*/
b7=(b2+b5); /*语句4*/
System.out.println(b3+b6);
以上代码片段中,存在编辑错误的语句是()
A.语句1
B.语句2
C.语句3
D.语句4
答案:ACD
解析:语句1错误:b3=(b1+b2);自动转为int,所以正确写法为b3=(byte)(b1+b2),或者将b3定义为int
语句2正确:b4,b5都为final类型,不会自动提升,所以和的类型视左边变量类型而定
语句3错误:虽然b4不会自动提升,但是b1仍会自动提升,所以结果一样需要强转,b8=(byte)(b1+b4)
语句4错误:同上。同时要注意b7为final修饰,只能被赋值一次,然后就不能再改变了
每日笔记:Java中,字符串在不同字符编码中字母和汉字占字节数情况:
①Unicode:字母 2 汉字 2 占位符 2
②GBK: 字母1 汉字2
③UTF-8:字母1 汉字3
Java基础练习1(数据类型转换)的更多相关文章
- JAV基础语法之---数据类型转换
数制转换": 1.string 转 byte[] String str = "Hello";byte[] srtbyte = str.getBytes(); 2.byte ...
- JAVA -数据类型与表达式---数据类型转换
数据类型转换技术 Java中,数据转换的方式有三种:*赋值类型转换*提升类型转换*强制类型转换 1.赋值类型转换 当需要将一个类型的值赋给另一种类型的变量时,该值将被转换为新类型的值,此时就发生了赋值 ...
- JaveScript基础(2)之数据类型转换和常用字符串的操作方法
1.JaveScript数据类型转换: A.转字符串:通过"+"或toString(); PS:如果都是数值类型,'+'会进行求和运算,否则会做字符串连接: var s=2.5;d ...
- Java从零开始学五(数据类型转换)
一.数据类型转换 分为“自动类型转换”和“强制类型转换” 二.自动类型转换 低级别------>高级别 byte b=7; int i=b; System.out.println("i ...
- c/c++基础篇之数据类型转换
C/C++常见的数据类型转换 1. 常见的单类基本类型转换 (1)强制类型转换 如: int a=(int)(9.87) 结果a=9 char c=(char)(97) 结果为c=’a’ ...
- 02-Java基础语法【数据类型转换、运算符、方法入门】
重点知识记录 01.数据类型转换 当数据类型不一样是,将会发生数据类型转换. 1)自动类型转换(隐式): 特点:代码不需要进行特殊处理,自动完成: 规则:数据范围从小到大:byte < shor ...
- Java基础_0311: 数据表与简单Java类映射
数据表与简单Java类映射 现在假设有如下的关系表,现在要求实现如下的数据关联操作: 一个部门有多个雇员: 一个雇员有一个或零个领导 代码实现 class Dept { private int dep ...
- Go基础系列:数据类型转换(strconv包)
Go不会对数据进行隐式的类型转换,只能手动去执行转换操作. 简单的转换操作 转换数据类型的方式很简单. valueOfTypeB = typeB(valueOfTypeA) 例如: // 浮点数 a ...
- Java基础87 MySQL数据约束
1.默认值 -- 创建表student1,设置address字段有默认值 create table student1 ( id int, name ), address ) default '广东省深 ...
随机推荐
- MySQL varchar类型数据转tinyint类型
在mysql数据库中性别字段以前存的是'男'和'女',使用varchar类型存储的,但是在我mongo库中这个字段使用的是'1'和'0'存储的,在两个库之间的数据转换就很不方便,于是想要统一存储类型, ...
- Redis之实战篇(与Mybatis整合)
摘要: 现在市面流行的java框架,一个是ssh(spring.struts2.hibernate),另一个是ssm(spring.springmvc.mybatis),由于之前已经有整合过ssm框架 ...
- 盒子模型、IFC、BFC和Collapsing margins
前言 盒子模型作为CSS基础中的基础,曾一度以为掌握了IE和W3C标准下的块级盒子模型即可,但近日在学习行级盒子模型时发现原来当初是如此幼稚可笑.本文尝试全面叙述块级.行级盒子模型的特性.作为近日学习 ...
- wireshark使用方法
抓取报文: 下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名,然后开始在此接口上抓包.例如,如果想要在无线网络上抓取流量,点击无线接口.点击Capture Opti ...
- Spring Cloud @HystrixCommand和@CacheResult注解使用,参数配置
使用Spring Cloud时绕不开Hystrix,他帮助微服务实现断路器功能.该框架的目标在于通过控制那些访问远程系统.服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力.Hystrix具备 ...
- tkiner中Radiobutton单选框控件(七)
Radiobutton控件 由于本次内容中好多知识都是之前重复解释过的,本次就不做解释了.不太清楚的内容请参考tkinter1-6节中的内容 import tkinter wuya = tkinter ...
- 你不知道的JavaScript--Item2 浮点数精度
理解JavaScript的浮点数 大多数编程语言都有几种数值型数据类型,但是JavaScript却只有一种.你可以使用typeof 运算符查看数字的类型.不管是整数还是浮点数,JavaScript都将 ...
- app后端设计(3)--短信,邮件,推送服务(2014.12.05更新)
在app的后端设计中,免不了消息的推送,短信,邮件等服务,下面就个人的开发经验谈谈这方面. (1)最重要的是,各种推送一定要放在队列系统中处理,不然会严重影响api的响应时间. (2)短信方面 以前我 ...
- 理解、学习与使用 Java 中的 Optional
从 Java 8 引入的一个很有趣的特性是 Optional 类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) -- 每个 Java 程序员都 ...
- 【bzoj 1095】[ZJOI2007]Hide 捉迷藏
题目链接: TP 题解: 样例好良心,调样例3h一A…… 细节好多……诸如没完没了的pop和push……搞得头都大了. 同情zzh……调了整一天了. 动态点分治裸题……果然每个“裸题”打起来都跟shi ...