java课后有感

学习java中,我们都会遇见很多很多的问题,例如:

1、枚举类型是引用类型,枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。

可以使用“==”和equals()方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。

正数的反码和补码都与原码相同;

负数的反码、补码和原码不相同,负数的反码:原码中除去符号位,其他的数值位取反,0变1,1变0,负数的补码:其反码加一,而且在java中数都是有符号的,在计算机运算中,都是以补码的方式进行运算的。

在某个值中都有固定的作用域,如果出现相同的值但是赋予不同的域,会出现起义,就会以最近的值报出。

在java中由低精度的转化为高精度的时会是无损失的转化,而由高精度的转化为低精度的时会有精度的损失。

在使用double类型的数据计算时是不精确的。因为这个涉及到十进制与二进制的转换问题,N进制可以理解为:数值*基数的幂,而double类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位一定会与实际数据存在误差。

因为第一个用的是二进制的值进行的计算,而第二个是将X+Y的值进行相加得到的值赋给X+Y;

import javax.swing.JOptionPane;

public class Addition {

public static void main(String[] args) {

// TODO 自动生成的方法存根

String firstNumber,

secondNumber;

int number1,

number2,

sum,

ji,

jian,

shang;

firstNumber =

JOptionPane.showInputDialog("Enter first integer");

secondNumber =

JOptionPane.showInputDialog("Enter second integer");

number1 = Integer.parseInt(firstNumber);

number2 = Integer.parseInt(secondNumber);

sum = number1 + number2;

ji = number1  * number2;

jian = number1 - number2;

shang = number1 / number2;

JOptionPane.showMessageDialog(

null,"The sum is" +sum,"Results",

JOptionPane.PLAIN_MESSAGE);

JOptionPane.showMessageDialog(

null,"The ji is" +ji,"Results",

JOptionPane.PLAIN_MESSAGE);

JOptionPane.showMessageDialog(

null,"The jian is" +jian,"Results",

JOptionPane.PLAIN_MESSAGE);

JOptionPane.showMessageDialog(

null,"The shang is" +shang,"Results",

JOptionPane.PLAIN_MESSAGE);

System.exit(0);

}

}

对这个程序可以进行加减乘除的运算。

时间: 2024-10-12 12:39:26

java课后有感的相关文章

JAVA设计模式有感

记得在大学学JAVA那阵,就觉得JAVA是一个c语言的一个包装,各种封装好的类库.功能,学习JAVA能快速上手编码.时隔8年,我感觉自己不懂JAVA. 最近看了有1个月的设计模式了,进度比较缓慢,一共才看了4个"策略模式","观察者模式","装饰者模式","工厂模式".也谈一谈自己的感受.其实这些设计模式以前也看过,当时的水准也就是硬生生记下了每个设计模式是怎么运作的,从没有想过它遵循了什么原则,达到了什么目的.因此,看过一遍

Java课后练习6

动手动脑1:阅读QiPan.java示例程序了解如何利用二维数组和循环语句绘制五子棋盘 1)源代码:import java.io.*; public class QiPan{ //定义一个二维数组来充当棋盘 private String[][] board; //定义棋盘的大小 private static int BOARD_SIZE = 15; public void initBoard() {  //初始化棋盘数组  board = new String[BOARD_SIZE][BOARD

Java课后练习3

动手动脑1:手写随机代码 程序:package test;public class sgg{private static final int N = 200;private static final int LEFT = 40;private static final int RIGHT = 10000;private static long x0 = 1L;private long a = 1103515245L;private long c = 12345L;private long m =

java课后作业-4

一.编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数. public class suiji { private static final int N = 200; private static final int LEFT = 40; private static final int RIGHT = 10000; private static long x0 = 1L; private long a = 1103515245L; private long c = 12345L

Java课后练习9(异常处理)

动手动脑1: import javax.swing.*; class AboutException { public static void main(String[] a) { int i=1, j=0, k; k=i/j; try { k = i/j; // Causes division-by-zero exception //throw new Exception("Hello.Exception!"); } catch ( ArithmeticException e) { S

在Mac系统下,搭建Java环境有感。

最近准备写一些网络方面的应用,所以要搭建java的环境,开始不太顺利,所以在这里分享一下经验. 1.搭建java环境的第一步,首先肯定是要JDK了,不知道为什么在OSX10.10环境下,安装JDK7也无法让其它编程工具使用,所以必须要去官方下载老的JDK6才可以,oracle官方网站找了许久也没能找到,在apple官方网站反而找到,真是奇怪,以下分享其链接. http://support.apple.com/kb/DL1572 2.安装MyEclipse10(好先进,现在都10了,时间过的真快)

Java 课后作业

一.可以使用instanceof运算符判断一个对象是否可以转换为指定的类型 代码:            public class TestInstanceof { public static void main(String[] args) { //声明hello时使用Object类,则hello的编译类型是Object,Object是所有类的父类 //但hello变量的实际类型是String Object hello = "Hello"; //String是Object类的子类,所

java课后作业6

一.运行TestInherits.java 结论:通过super调用基类构造方法,必须是子类构造方法中的第一个语句. 二.为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来? 子类是从父类继承来的,所以想用子类创建对象的时候,必须要先建立父类的对象,子类有父类的属性和方法:就要给父类的属性分配内存空间,在创建对象的时候如果父类中的数据需要初始化,那么就必须要调用.不能反过来,因为基类和子类就像现实中的父亲和子女一样,如果反过来就乱了辈分,而且对于子类不知道有几

java课后作业5

[问题]随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中. 设计思路: 1.申请一个长度为10的数组 2.计算机随机生成10个数,并赋给数组 3.消息框显示数组内容 4.接着计算数组元素的和 5.将数组元素的和显示在消息框 程序流程图: 源程序代码: import java.util.Random; import javax.swing.JOptionPane; public class Test { public static void m