JAVA-初步认识-第二章-算术运算符2续

一. 对自增运算符的再次认识

首先先明白一点,运算符是运算的符号化表示,每一种运算符的背后都代表着特定的运算。这些运算的形式是各种各样的,在这里我们将重新讨论自增运算符,符号为++。

对自增运算符进行演示,结果如下:

我们开始设想的是自增运算是在自身数值的基础上,进行常量的相加,这个常量可以不是1,当我们进行检测时发现了错误。这里的错误有两个,自增运算是固定加一,且自增运算符的书写是固定的,就是++不需要添加常量。

我们重新书写了java源程序,用DOS检测的结果为:

二. 谈论自增运算符参与复杂运算时的情况分析

DOS的检测结果显示了精度缺失的错误。表明了我们对于java的默认类型规则掌握的还不是很熟悉。b*a++, 计算出来的结果默认的是int,当将结果赋值给一个byte类型时,当前的结果为12,虽谈没有超过byte的范围,但是由于右侧是变量进行的计算,因此,以后很有可能会超过byte定义的范围,所以报告显示“可能会有损失”。如果我们重新定义一个int c=1; c=b*a++; DOS结果显示正常。如果是常量int类型,系统会自动判断大小,然后进行强制类型转换。如果是+=之类的运算符,系统也会自动判断,强制转换。

如果我们在主函数的范围内,直接书写byte a=3,b=4;和b*a++; 然后输出b,DOS中将显示b*a++不是语句。

时间: 09-01

JAVA-初步认识-第二章-算术运算符2续的相关文章

JAVA-初步认识-第二章-算术运算符1

一. 概述运算符 之前的一些讲解的是错误,在常量和变量那一块,围绕地都是将常量赋值给变量,在这里谈论的才是运算,之前的都不算是运算.数据最主要的作用就是用来运算的.这里将要讨论运算过程中,用到的各种运算符,主要是算术运算符. 在现阶段学习的中,我学到两点:计算机的运算是一步一步来的,而且每一步之后,都有规则.默认数据类型是一直在起作用. 二. 算术运算符 JAVA运算中默认的数据类型,在算术运算所起的作用,将不同于日常生活中的四则运算.结果如下: 按照日常习惯,结果就应该是6370,但是DOS显

JAVA-初步认识-第二章-算术运算符2

一. 介绍其他类型的运算符. 除了前面介绍的+,-,*,/,%,+连接符外,还有两种++,--. 二. ++自增 定义:在原有数据的基础上加一,在赋给原有数据. 对自增运算进行了演示,结果如下:对于++的使用方法还不熟悉. 注意:自增运算并不简单,相同的输出结果可以有两种书写方法.例如:写成a++,或者++a都是可以的.这后面存在着深刻的原理,并非看着那么简单. 这里面实际上就是一个优先级的问题.a++是a先参与左侧的运算,然后a再加一,而++a是不管左侧是什么,先进行a加一,再将a代入左侧的运

Java图示(第二章 Java语言基础)

Java图示(第二章 Java语言基础) 三个基本部分:一个包声明(package语句).任意数量的引入(import语句).类和接口声明(class和interface语句) 1.包声明—package语句 1)包是类和接口的集合,即类库 2)用类库管理类,方便管理 3)Java类都在类库中 4)只有一条包声明,且为第一条 2.引入语句—import语句 1)import语句在包语句后,所有类或接口前 2)两种形式 (1)import 包名.类名: (2)import 包名*://编译器会识别

Thinking In Java笔记(第二章 一切都是对象)

第二章 一切都是对象 2.1 用引用操纵对象 每种语言都具有操纵内存中元素的方式,必须注意将要处理的是什么数据类型,是直接操纵元素还是基于某种特殊语法间接表示(例如C和C++里的指针)来操纵对象. java中一切都被视为对象,可以用单一固定的语法,但程序员所操纵的标识符实际上只是对象的一个"引用",引用可以独立于对象存在,也可以和实际的对象相关联.例如: String s1; String s2 = new String("hello world"); 上面的s1即

java编程思想 第二章

这篇时间较之前篇章时间靠后,是由于,某一天晚上看完Java编程思想文献之后来不及做笔记了. 以下笔记基本为转载,不是原创 第二章   一切都是对象 目录: 2.1 用引用操纵对象 2.2 必须由你创建所有对象 2.3 永远不需要销毁对象 2.4 创建新的数据类型:类 2.5 方法.参数和返回值 2.6 构建一个Java程序 2.7 你的第一个Java程序 2.8 注释和嵌入式文档 2.9 编码风格 2.1 用引用操纵对象 一切都看作对象,操纵的标识符实际上是对象的一个“引用”,遥控器(引用)操纵

java 第12节 基本算术运算符与模运算符

2016-06-29 + 加法运算- 减法* 乘法/ 除法% 取模++ 自加运算-- 自减运算+= 加法赋值-=*=/=%= 1 基本算术运算符 package com.java1995; /** * 基本算术运算符 * @author Administrator * */ public class Test { public static void main(String[] args){ //声明2个int类型变量 int i1=7; int i2=2; System.out.println

[Effective Java 读书笔记] 第二章 创建和销毁对象 第一条

第二章  创建和销毁对象 第一条 使用静态工厂方法替代构造器,原因: 静态工厂方法可以有不同的名字,也就是说,构造器只能通过参数的不同来区分不同的目的,静态工厂在名字上就能表达不同的目的 静态工厂方法不用每次调用的时候都创建新的对象(其实是因为它是static的,所以只能用static的,所以是一早就创建了,不需要重复创建吧..),比如书中 Boolean.valueOf(boolean) 1 public static final Boolean TRUE = new Boolean(true

java编程思想--第二章 一切都是对象

如果不做引申的话,本章没有多少可总结的内容.有些以前没有注意的细节可以写下来. 1.数据存储的位置 (1).寄存器.程序控制不了. (2).堆栈.对象的引用.基本类型. (3).堆.各种对象. (4).常量存储.和代码在一起. (5).非RAM存储.主要指流对象和持久化对象,前者准备网络传输,后者被丢到了硬盘上. 2.java中的数组会被自动初始化: (1).基本类型数组元素会被初始化为0 (2).引用类型数组元素会被初始化为null 3.变量作用域 (1).基本类型的跟C一样 (2).引用类型

java学习笔记第二章

二.面向对象 Oriented Object 以类组织代码,以对象来封装数据 面向过程:以方法(函数)组织数据,以线性的思维去解决:当数据量少,无问题:当数据多了,方法多了,以 方法为核心组织代码,累人:扩展性差,不易维护(当多人协同项目时) C语言结构体,多个变量集合在一块,方便管理:按照这个想法,横向竖向扩散/深入思考,把相近的方法也放在一起,方法反复调用变量, 深度发散,就把方法及变量打包到一块,这种概念在C语言里没有,就起名叫做类 class [ YY] 以类来组织代码,易于维护,易于扩