1、动手动脑

运行它EnumTest.java,分析运行结果

s和t分别引用的是SMALL和LARGE,枚举类型不是原始数据类型,s和u的赋值方式不同,但结果一样,列出它的所有值:SMALL,MEDIUM,LARGE。

2、枚举类型的基本用法

枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。 可以使用“==”和equals()方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。

3、补码、原码和反码

反码:反码的表示方法是:正数的反码是其本身,负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
原码:原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值.
补码:补码的表示方法是:正数的补码就是其本身,负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1.
4.为什么double类型的数值进行运算得不到数学上精确的结果

这个涉及到二进制与十进制的转换问题。
N进制可以理解为:数值×基数的幂,例如我们熟悉的十进制数123.4=1×10²+2×10+3×(10的0次幂)+4×(10的-1次幂);其它进制的也是同理,例如二进制数11.01=1×2+1×(2的0次幂)+0+1×(2的-2次幂)=十进制的3.25。
double类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位上一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。

5、以下代码的输出结果是什么?

int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);在这+表示为连接符
System.out.println(X+Y+"=X+Y");在这第一个+表示相加,第二个+表示为连接符
为什么会有这样的输出结果?
+在不同的情况下表达不同的含义,比如在第一行输出代码中表达连接符,而在第二行中表达相加和连接符。
6、加减乘除
import javax.swing.JOptionPane;  // import class JOptionPane

public class Test5 {
public static void main( String args[] )
{
String firstNumber, // first string entered by user
secondNumber; // second string entered by user
int number1, // first number to add
number2, // second number to add
sum, // sum of number1 and number2
subtraction, // subtraction of number1 and number2
product, // product of number1 and number2
division = 0; // division of number1 and number2 // read in first number from user as a string
firstNumber =
JOptionPane.showInputDialog( "输入第一个数" ); // read in second number from user as a string
secondNumber =
JOptionPane.showInputDialog( "输入第二个数" ); // convert numbers from type String to type int
number1 = Integer.parseInt( firstNumber );
number2 = Integer.parseInt( secondNumber ); // add the numbers
sum = number1 + number2; //multiply the numbers
product = number1 * number2; //divide the numbers
if( number2 == 0 )
JOptionPane.showMessageDialog(
null, "分母为零,无法计算两数相除", "Results",
JOptionPane.PLAIN_MESSAGE );
else
division = number1 / number2; //minus the numbers
subtraction = number1 - number2; // display the results
JOptionPane.showMessageDialog(
null, "The sum is " + sum
+ " \nThe subtraction is " + subtraction
+ " \nThe product is " + product
+ " \nThe division is " + division, "Results",
JOptionPane.PLAIN_MESSAGE ); System.exit( 0 ); // terminate the program
}
}

仿照例子写出减乘除,弹窗提示。

7、验证码

程序源码:

import javax.swing.JOptionPane;

public class Test6 {

    public static void main(String[] args)
{
//定义一个空字符串
String result = "";
String Input = ""; //进行6次循环
for(int i = 0 ; i < 6 ; i ++)
{
//生成一个97~122的int型的整数
int intVal = (int)(Math.random() * 26 + 97);
//将intValue强制转换为char后连接到result后面
result = result + (char)intVal;
}

//输出验证码
JOptionPane.showMessageDialog(
null, "验证码:" + result, "Results",
JOptionPane.PLAIN_MESSAGE );
//用户输入验证码
Input =
JOptionPane.showInputDialog( "输入验证码" );
//判断是否一致
if(Input.equals(result))
JOptionPane.showMessageDialog(
null, "验证码输入正确", "Results",
JOptionPane.PLAIN_MESSAGE );
else
JOptionPane.showMessageDialog(
null, "Error", "Results",
JOptionPane.PLAIN_MESSAGE ); } }

程序流程图:

运行结果:

Java语法基础课后作业的更多相关文章

  1. 00-JAVA语法基础--课后作业

    题目:像二柱子那样,花20分钟写一个能自动生成30道小学四则运算题目的“软件”. package 课堂作业1; import java.util.Random; import java.util.Sc ...

  2. Java语法基础(1)

    Java语法基础(1) 1.      Java是一门跨平台(也就是跨操作系统)语言,其跨平台的本质是借助java虚拟机 (也就是JVM(java virtual mechinal))进行跨平台使用. ...

  3. java web基础第一次作业

    JAVA WEB基础 一.B/S架构 1.B/S架构简介: B是英文单词“Browser”的首字母,即浏览器的意思:S是英文单词“Server”的首字母,即服务器的意思.B/S就是“Browser/S ...

  4. JAVA语法基础作业——动手动脑以及课后实验性问题 (八)

    一.动手动脑 运行AboutException.java示例,了解Java中实现异常处理的基础知识. 1)源代码 import javax.swing.*; class AboutException ...

  5. 1028作业:Java语法基础

    //1.输入长与宽计算长方形面积与周长.(用精度类型计算) package com.lovo.J133; import java.util.Scanner; public class Homework ...

  6. java语法基础--动手动脑问题及课后实验问题

    ---恢复内容开始--- 动手动脑: 1:仔细阅读示例:EnumTest.java,运行它,分析运行结果 结果 :枚举类型是引用类型!枚举类型不属于原始数据类型,它的每个具体指都引用一个特定的对象.相 ...

  7. Java语法基础动手动脑

    仔细阅读示例:EnumTest.Java,运行它,分析运行结果? 你能得到什么结论?你掌握了枚举类型的基本用法了吗? EnumTest.java public class EnumTest { pub ...

  8. java语法基础(一)

    这个是自己前两年做java视频教程时候的课件.感兴趣的同学可以参考下. 这里是纯粹的语法行总结. editplus的使用 选择项目目录 打开editplus 左侧目录导航栏 可以打开盘符,文件夹 可以 ...

  9. java语法基础

    Java的基本符号(token) Java的单词符号有五种:关键字.标识符.常量.分隔符和操作符. Java的字符集 Java 采用一种称为unicode的字符集,该字符集合是一种新的编码标准,与常见 ...

随机推荐

  1. docker build

    nginx Docfile ----------------------- FROM centos   MAINTAINER daniel   RUN yum install -y wget RUN ...

  2. Linux awk基础笔记

    正则表达式含义与构成:用单个字符串来描述或者匹配一系列符合某个句法规则的字符串,一般是由普通字符与特殊字符组成 awk 选项 '模式或者命令{编辑指令}' 文件名 awk '//{print}' aw ...

  3. FireDAC的SQLite初探

    // uses FireDAC.VCLUI.Wait  之后, 可不用添加 TFDGUIxWaitCursor TFDConnection          // 数据连接 TFDQuery      ...

  4. ELK的端口以及加入x-pack的密码问题

    ElasticSearch的端口: http://localhost:9200 http://localhost:9200/_plugin/head Kibana的端口: http://localho ...

  5. Linux内核调用I2C驱动_驱动嵌套驱动方法

    禁止转载!!!! Linux内核调用I2C驱动_以MPU6050为例 0. 导语 最近一段时间都在恶补数据结构和C++,加上导师的事情比较多,Linux内核驱动的学习进程总是被阻碍.不过,十一假期终于 ...

  6. rubymine自动转义双引号

    如果你使用rubymine在编写JSON字符串的时候,然后要一个一个\去转义双引号的话,就实在太不应该了,又烦又容易出错.在rubymine可以使用Inject language帮我们自动转义双引号 ...

  7. 20145226夏艺华 《Java程序设计》第1周学习总结

    http://www.cnblogs.com/bestixyh/p/5779286.html 去年暑假写的,确实比较丑陋,保留下来也是为了激励自己作出更多改变.寒假写的每一篇博客都尽最大努力养成了良好 ...

  8. 北京Uber优步司机奖励政策(12月9日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  9. spring源码-自定义标签-4

    一.自定义标签,自定义标签在使用上面相对来说非常常见了,这个也算是spring对于容器的拓展.通过自定义标签的方式可以创造出很多新的配置方式,并且交给容器直接管理,不需要人工太多的关注.这也是spri ...

  10. C++中的引用常见用法

    1.引用的内涵 引用就是给变量取外号而已. 2.四种不能使用引用的情况 void &r=x; //不能建立void类型引用 int &&r=x; //不能建立引用的引用 int ...