第02章_变量与运算符拓展练习

这篇具有很好参考价值的文章主要介绍了第02章_变量与运算符拓展练习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第02章_变量与运算符拓展练习


1、辨别标识符

  • 是否符合规则,即编译是否报错?
  • 是否符合规范?即是否够优雅

(1)以下标识符作为类名是否合适

Test,a,test,ttt,class, public, int,尚硅谷,exercise8,Exercise8
编译报错:
	class, public, int,
编译不报错但不好:
	a,test,ttt,尚硅谷,exercise8,
合适的类名有:
	TestExercise8

(2)以下标识符作为变量名是否合适

miles, Test, a++, --a, 4#R, $4, #44, apps, class, public, int, x, y, radius,尚硅谷,a1,1b,b0a
编译报错:
	class, public, int,a++, --a, 4#R, #44,1b
编译不报错但不好:
    Test,a1,b0a,尚硅谷,$4
相对合适的变量名有:
   miles, radius,apps, x, y

2、数据类型转换简答

//1、练习题:判断如下代码是否编译通过,如果能,结果是多少?
short s1 = 120;
short s2 = 8;
short s3 = s1 + s2;

//编译不通过,因为s1+s2自动提示为int类型

//2、练习题:判断如下代码是否编译通过,如果能,结果是多少?
short b1 = 120;
short b2 = 8;
byte b3 = (byte)(b1 + b2);

//编译通过,结果是-128

//3、练习题:判断如下代码是否编译通过,如果能,结果是多少?
char c1 = '0';
char c2 = '1';
char c3 = c1 + c2;

//编译不通过,因为c1+c2自动提示为int类型

//4、练习题:判断如下代码是否编译通过,如果能,结果是多少?
char c1 = '0';
char c2 = '1';
System.out.println(c1 + c2);

//编译通过,println方法可以接收各种数据类型的值,进行输出,结果是97

//5、练习题:判断如下代码是否编译通过,如果能,结果是多少?
int i = 4;
long j = 120;  //自动类型提升
double d = 34; //自动类型提升
float f = 1.2;

System.out.println(i + j + d + f);

//编译不通过,因为1.2默认是double类型,不能直接赋值给float的f,要么在1.2加F,要么加(float)1.2

//6、练习题:判断如下代码是否编译通过,如果能,结果是多少?
int a = 1;
int b = 2;
double result = a/b;
System.out.println(result);

//编译通过,结果是0.0,先计算a/b结果是0,然后提升double,0.0

3、判断如下代码的运行结果(难)

public class Exer3{
	public static void main(String[] args){
		int i = 1;
		int j = i++; 1  2  3  
		int k = i++ * ++j + ++i * j++;
		
		System.out.println("i = " + i);
		System.out.println("j = " + j);
		System.out.println("k = " + k);
	}
}
public class Exer3{
	public static void main(String[] args){
		int i = 1;
		int j = i++;
		/*
		(1)先取i的值,放到操作数栈中
		(2)i自增,i=2
		(3)用操作数栈中1赋值给j

			j=1,i=2
		*/
		
		int k = i++ * ++j + ++i * j++;
		/*
		(1)i++ 
		先取i的值2,放到操作数栈中,紧接着i自增为3
		(2)++j
		j先自增为2,然后取j的值2放到操作数栈中,
		(3)算* ,取出操作数栈中2 和 2 相乘结果是4
		这个4重新放回操作数栈
		
		(4)++i
		i先自增为4,然后取i的值4放到操作数栈中,
		(5)j++
		先取j的值2到操作数栈中,紧接着j自增为3
		(6)算*,取出操作数栈中4 和 2 相乘结果是8
		这个8重新放回操作数栈
		
		(7)算+
		取出操作数栈中4 和 8 相加结果是12
		
		*/
		
		System.out.println("i = " + i);//4
		System.out.println("j = " + j);//3
		System.out.println("k = " + k);//12
	}
}

4、判断如下程序的运行结果

//如下代码的计算结果是:
int i = 1;
i *= 0.2;  
i++;
System.out.println("i=" + i);//i=1

5、判断如下程序的运行结果

//如下代码的运算结果是:
int i = 2;
i *= i++;

int j = 2;
j *= j+1; 

int k = 2;
k *= ++k;

System.out.println("i=" + i);//i=4
System.out.println("j=" + j);//i=6
System.out.println("k=" + k);//i=6

6、Java的基本数据类型有哪些?String是基本数据类型吗?

Java的基本数据类型有:byte,short,int,long,float,double,char,boolean

String不是基本数据类型

7、语法判断

float f=3.4;是否正确,表达式15/2*2的值是多少

float f=3.4; //错误,因为3.4默认是double类型
System.out.println(15/2*2); //14,因为15/2结果是7

8、char型变量中是否可以存储一个汉字?

可以

9、说明基本数据类型变量之间自动类型提升的运算规则

> 容量小的类型自动转换为容量大的数据类型
> 有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
> byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型。 
> boolean类型不能与其它数据类型运算。

10、说明基本数据类型变量之间强制类型转换的使用规则和可能的问题

> 强制类型转换:自动类型转换的逆运算,需要使用强制类型转换符()

> 注意的问题:可能会造成精度的损失

11、按步骤编写代码,效果如图

第02章_变量与运算符拓展练习,JavaSE拓展练习,java,开发语言

  • 开发提示:四则运算的符号

    : +: -: *: /
    
  • 编写步骤:

    1. 定义类 Exercise11
    2. 定义 main方法
    3. 定义2个int类型变量x、y,x赋值为100,y赋值为200
    4. 定义新变量add,保存变量x,y的和并打印到控制台
    5. 定义新变量sub,保存变量x,y的差并打印到控制台
    6. 定义新变量mul,保存变量x,y的积并打印到控制台
    7. 定义新变量div,保存变量x,y的商并打印到控制台

    class Exercise11{
    publie static void main(String[]args){
    int x,y;
    x = 100;
    y = 200;
    add = x + y;
    sob = x - y;
    nul = x * y;
    div = x / y;

    }
    }

public class Exercise11 {

	public static void main(String[] args) {
		int x = 100;
        int y = 200;
        int add = x + y;
        int sub = x - y;
        int mul = x * y;
        int div = x / y;
        System.out.println("x,y的和为:" + add);
        System.out.println("x,y的差为:" + sub);
        System.out.println("x,y的积为:" + mul);
        System.out.println("x,y的商为:" + div);
	}

}

12、按步骤编写代码,效果如图

第02章_变量与运算符拓展练习,JavaSE拓展练习,java,开发语言

  • 编写步骤:
  1. 定义类 Exercise12
  2. 定义 main方法
  3. 定义两个byte类型变量b1,b2,并分别赋值为10和20.
  4. 定义变量b3,保存b1和b2的和,并输出.
  5. 定义两个short类型变量s1,s2,并分别赋值为1000和2000.
  6. 定义short类型变量s3,保存s1和s2的和,并输出.
  7. 定义一个char类型变量ch1赋值为’a’,一个int类型变量i1赋值为30.
  8. 定义变量ch3,保存c1和i1的差,并输出.
public class Exercise12 {
	public static void main(String[] args) {
		byte b1 = 10;
		byte b2 = 20;
		byte b3 = (byte)(b1 + b2);
		System.out.println("byte类型的b1和b2的和为:");
		System.out.println(b3);
		
		short s1 = 1000;
		short s2 = 2000;
		short s3 = (short)(s1 + s2);
		System.out.println("short类型的s1和s2的和为:");
		System.out.println(s3);
		
		char c1 = 'a';
		int i1 = 30;
		int ch3 = c1 - i1;
		System.out.println("char类型的ch1和int类型的i1的差:");
		System.out.println(ch3);
	}
}

13、按步骤编写代码,效果如图

第02章_变量与运算符拓展练习,JavaSE拓展练习,java,开发语言

  • 编写步骤:
    1. 定义类 Exercise13
    2. 定义 main方法
    3. 定义两个int类型变量a1和a2,分别赋值10,11,判断变量是否为偶数,拼接输出结果
    4. 定义两个int类型变量a3和a4,分别赋值12,13,判断变量是否为奇数,拼接输出结果
public class Exercise13 {
	public static void main(String[] args) {
		int a1 = 10;
		int a2 = 11;
		int a3 = 12;
		int a4 = 13;
		System.out.println("10是偶数?" + (a1 % 2 == 0));
		System.out.println("11是偶数?" + (a2 % 2 == 0));
		System.out.println("12是奇数?" + (a3 % 2 != 0));
		System.out.println("13是奇数?" + (a4 % 2 != 0));
	}
}

14、桃园结义获取老大的年龄

历史中,刘关张桃园三结义大家非常熟悉了。现有三个童鞋,年龄如下:

刘小备:23岁

关小羽:22岁

张小飞:21岁

获取三人中最大的年龄文章来源地址https://www.toymoban.com/news/detail-788214.html

public class Exercise14 {
    public static void main(String[] args) {
        int liuXiaoBei = 23;
        int guanXiaoYu = 22;
        int zhangXiaoFei = 21;

        int tempMax = (liuXiaoBei > guanXiaoYu)? liuXiaoBei : guanXiaoYu;
        int maxAge = (tempMax > zhangXiaoFei)? tempMax : zhangXiaoFei;
        System.out.println("三人中最大的年龄是:" + maxAge);
    }
}

15、将整数60手动转换为十六进制(难)

public class Exercise15 {
    public static void main(String[] args) {

        int num = 60;
        int j1 = num & 15;
        String s1 = (j1 > 9) ? (char) (j1 - 10 + 'A') + "" : j1 + "";//取出了最低的4位对应的字符

        int j2 = (num >>> 4) & 15;
        String s2 = (j2 > 9) ? (char) (j2 - 10 + 'A') + "" : j2 + "";//取出了次最低的4位对应的字符

        System.out.println(s2 + s1);

    }
}

16、判断闰年

给定一个年份,判断是否是闰年。输出"xxx年(是/不是)闰年"。

闰年的判断标准是:
1)可以被4整除,但不可被100整除
 2)可以被400整除
public class Exercise16 {
    public static void main(String[] args) {
        int year = 2018;
        boolean isLeapYear = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
        System.out.println(year + (isLeapYear ? "是闰年" : "不是闰年"));
    }
}
给定一个年份,判断是否是闰年。输出"xxx年(是/不是)闰年"。

闰年的判断标准是:
1)可以被4整除,但不可被100整除
 2)可以被400整除
public class Exercise16 {
    public static void main(String[] args) {
        int year = 2018;
        boolean isLeapYear = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
        System.out.println(year + (isLeapYear ? "是闰年" : "不是闰年"));
    }
}

到了这里,关于第02章_变量与运算符拓展练习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 初识Java篇(JavaSE基础语法)(1)(数据类型+运算符)

     个人主页(找往期文章包括但不限于本期文章中不懂的知识点): 我要学编程(ಥ_ಥ)-CSDN博客 目录 前言:  初识Java  运行Java程序 注释 标识符 数据类型与变量  字面常量 数据类型 变量 类型转换  类型提升  字符串类型  运算符 算术运算符  关系运算符  逻辑运

    2024年03月24日
    浏览(40)
  • Java数据类型,变量与运算符

    常量是在程序运行期间,固定不变的量称为常量。 在以上程序中,输出的Hello Word,其中的“Hello Word”就是字面常量。 字面常量的分类: 字符串常量 整形常量 浮点数常量 字符常量 布尔常量 空常量 注意:字符串,整形,浮点型,字符型以及布尔型,在Java中都称为数据类型

    2024年02月08日
    浏览(43)
  • 初识Java:数据类型与变量、运算符

    哈喽大家好,这篇文章我将为大家分享关于Java的数据类型与变量和运算符。 在Java中数据类型分为基本数据类型与引用数据类型,今天我们着重讲解基本数据类型。 基本数据类型又分为整型、浮点型、字符型以及布尔类型,我们来看下面的一张表。 整型类型 byte类型 byte类型

    2024年02月01日
    浏览(68)
  • Java-01变量、运算符、表达式、输入与输出

    tip:[start]编程是一种控制计算机的方式,和我们平时双击打开文件、关机、重启没有任何区别——闫学灿tip:[end] 内置数据类型: 类型 字节数 举例 byte整数 1 123 short整数 2 12345 int整数 4 123456789 long整数 8 1234567891011L float浮点数 4 1.2F double浮点数 8 1.2, 1.2D boolean 1 true or false char字符

    2024年02月05日
    浏览(38)
  • 【javaSE】 运算符

    目录 什么是运算符 算术运算符 基本四则运算符:加减乘除模(+ - * / %) 注意事项 增量运算符 += -= *= %= 注意事项  自增/自减运算符 ++ -- 注意事项 关系运算符 注意事项 逻辑运算符 逻辑与 逻辑或 || 逻辑非 ! 短路求值 注意事项 位运算符 按位与 位或 | 注意事项  按位取反 ~ 注

    2024年02月14日
    浏览(48)
  • 【JavaSE语法】运算符

    计算机的最基本的用途之一就是执行数学运算,运算符即对操作数进行操作时的符号,不同运算符操作的含义不同 Java中运算符可分为以下: 算术运算符 (+ - * /)、 关系运算符 ( ==)、 逻辑运算符 、 位运算符 、 移位运算符 以及 条件运算符 等 1. 基本四则运算符:加减乘除模

    2024年02月07日
    浏览(35)
  • 【JAVASE】运算符

    ⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈Java 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 计算机的最基本的用途之一就是执行数学运算,比如: 上述 + 和 等就是运算符,即:对操作数进行操作时的符号,不同运算符操作的含

    2024年02月15日
    浏览(31)
  • 【JavaSE】数据类型和运算符

    从这一篇我们开始Java的学习~ 欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,欢迎指出~ 目录 前言 Java第一个程序 字面常量 字面常量的分类 结合代码理解 类型转换 类型提升  byte与byte的运算 正确写法 字符串类型String int与String相互转换 int转String String转int 算

    2024年03月28日
    浏览(37)
  • 图灵日记之java奇妙历险记--数据类型与变量&&运算符

    看下面这个栗子,宝子们 输出的\\\"cheer up!!!\\\"就是字面变量 字面常量的值在程序的整个生命周期中是不变的 字面常量的分类: 字符串常量 整形常量 浮点数常量 字符常量 布尔常量:只有两种true和false 空常量 注意:字符串,整形,浮点型,字符型以及布尔型,在java中都被叫作数据类型

    2024年02月04日
    浏览(35)
  • JavaSE ---01 数据类型与运算符

    正所谓温故而知新,可以为师矣,虽然已经学过一遍javase,但是回头复习仍然能找到很多初学的时候遗忘的点,所以我们在学习的途中还是要保持空杯心态,这样才能走的更远, 切忌眼高手低 . 说到变量大家都经常去使用,那么什么是变量呢?下面给出变量的定义 变量指的是程序运行时

    2024年02月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包