在Java中,每一个变量属于一种类型(type)。在声明变量时,变量所属的类型位于变量名之前。

例如:

double salary;

int vacationDays;

long earthPopulation;

boolean flag;

注:变量名对大小写敏感,hireDay和hireday就是不同的两个变量。

变量初始化

申明一个变量之后,必须用赋值语句对变量进行显式初始化,千万不要使用未被初始化的变量。

Error:

int hireDay;

System.out.println(hireDay);

Success:

int hireDay02 = 5;

System.out.println(hireDay02);

注:在Java中,变量的声明尽可能地靠近变量第一次使用的地方,这是一种良好的程序编写风格。

常量

在Java中,利用关键字final指示常量。

例如:

final double BIRD_GREED = 100;

关键字final表示这个变量只能被赋值一次。一旦被赋值之后,就不能在进行更改了。习惯上常量名使用全大写。

常量又分为方法常量和类常量。

方法常量是定义在方法内,只能供这个方法使用。

类常量是定义在方法的外部,注意要添加修饰符。

运算符

1.算数运算符

在Java中,使用算术运算符+,-,*,/表示加减,删,乘,除运算。当参与/运算的两个操作数都是整数时,表示整数除法;否则,表示浮点除法。整数的求余操作用%表示。

例如:15/2 = 7;15%2 = 1; 15.0/2 = 7.5;

2.自增运算符和自减运算符

自增运算符和自减运算符分别都具有两种形式:

一种是前缀(++a,--a),前缀方式先进行加1运算。

一种是后缀(a++,a--),后缀方式则使用原来的值。

例:

int a = 5;

int b = 5;

int m = 2 * ++a; // m等于12,a等于6

int n = 2 * b++; // n等于10,b等于6

3.关系运算符和boolean运算符

等于==,  不等于!=,  大于>,小于<, 大于等于>=, 小于等于<=

逻辑“与”&&, 逻辑“或”||, 逻辑“非”!

三元运算符condition?expression1:expression2

4.位运算符(☆重点研究)

&“与”   |“或”   ~“非”  ^“异或”   >>“将二进制位进行右移”   <<“将二进制位进行左移”

数学函数与常量

在Math类中,包含了各种各样的数学函数。

Math.sqrt(x);  //x的平方根

Math.pow(x,a);  //x的a次方

三角函数:

Math.sin();

Math.cos();

Math.tan();

Math.atan();

Math.atan2();

指数函数和反函数:

Math.exp();

Math.log();

Math.log10();

两个常用的值:Math.PI (pai>π)   Math.E (e)

数值类型之间的转换

实心箭头:表示无信息丢失的转换。

虚线箭头:表示可能有精度损失的转换。

注:

· 如果两个操作数中有一个是double类型,另一个操作数就会转换为double类型。

· 否则,如果其中一个操作数是float类型,另一个操作数就会转换为float类型。

· 否则,如果其中一个操作数是long类型,另一个操作数将会转换为long类型。

· 否则,两个操作数都将会被转换为int类型。

强制类型转换

强制类型转换的语法格式是在圆括号中给出想要转换的目标类型,后面紧跟待转换的变量名。

例如:

double a = 3.14;

int b = (int) a;

括号和运算符级别

如果不使用圆括号,就按照给出的运算符优先级次序进行计算。同一个级别的运算符按照从左往右的次序进行计算(除了下表中给出的从右往左的次序)。

 
优先级 运算符 结合性
1 () [] . 从左到右
2 ! +(正)  -(负) ~ ++ -- 从右向左
3 * / % 从左向右
4 +(加) -(减) 从左向右
5 << >> >>> 从左向右
6 < <= > >= instanceof 从左向右
7 ==   != 从左向右
8 &(按位与) 从左向右
9 ^ 从左向右
10 | 从左向右
11 && 从左向右
12 || 从左向右
13 ?: 从右向左
14 = += -= *= /= %= &= |= ^=  ~=  <<= >>=   >>>= 从右向左
 
   说明:
 
  1、 该表中优先级按照从高到低的顺序书写,也就是优先级为1的优先级最高,优先级14的优先级最低。
 
  2、 结合性是指运算符结合的顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3+-4,则意义为3加-4,符号首先和运算符右侧的内容结合。
 
  3、 instanceof作用是判断对象是否为某个类或接口类型,后续有详细介绍。
 
  4、 注意区分正负号和加减号,以及按位与和逻辑与的区别
 

枚举类型

有时候,变量的取值只在一个有限的集合内。例如,销售的服装只有小、中、大、特大这四种尺寸。

针对这种情况,可以自定义枚举类型。枚举类型包括有限个命名的值。例如,

enum Size{SMALL,MEDIUM,LARGE,EXTRA_LARGE}

如果我们想使用小号的服装型号,那么就可以 Size s = Size.SAMLL;

 

Java的基本程序设计结构(上)的更多相关文章

  1. JAVA的基本程序设计结构<上>

    一个简单的Java应用程序 public class FirstSample { public static void main(String[] args) { System.out.println ...

  2. Java核心技术卷一基础知识-第3章-Java的基本程序设计结构-读书笔记

    第3章 Java的基本程序设计结构 本章内容: 一个简单的Java应用程序 字符串 注释 输入输出 数据类型 控制流 变量 大数值 运算符 数组 本章主要讲述程序设计相关的基本概念(如数据类型.分支以 ...

  3. 201771010142 张燕 Java的基本程序设计结构第二周学习总结

    第三章 Java的基本程序设计结构 第一部分 理论知识学习部分 一 基本知识: 1.标识符:由字母.下划线,美元符号和数字组成,第一个符号不能为数字,可以用作类名.变量名.方法名.数组名和文件名等. ...

  4. 1-03 Java的基本程序设计结构

    1-03 Java的基本程序设计结构 3.1 & 3.2 在一个单词中间使用大写字母的方式称为骆驼命名法.以其自身为例,应该写成CamelCase). 与C/C++一样,关键字void表示这个 ...

  5. Java核心技术卷阅读随笔--第3章【Java 的基本程序设计结构】

    Java 的基本程序设计结构 现在, 假定已经成功地安装了 JDK,并且能够运行第 2 章中给出的示例程序.我们从现在开始将介绍 Java 应用程序设计.本章主要介绍程序设计的基本概念(如数据类型.分 ...

  6. 重新学习Java——Java基本的程序设计结构(二)

    上一节简单回顾了Java基本的一些程序设计的知识,这一节将继续根据<Java核心技术>这本书,进行这方面知识的复习与探索. 1. 字符串 Java字符串实际上就是Unicode字符序列.例 ...

  7. JAVA的基本程序设计结构(下)

    字符串 Java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义类,叫做 String. String e=""; //an empty String String ...

  8. Java核心技术-Java的基本程序设计结构

    1.一个简单的Java应用程序 public class FirstSample { public static void main(String[] args) { System.out.pring ...

  9. 重新学习Java——Java基本的程序设计结构(一)

    最近在实验室看到各位学长忙于找工作的面试与笔试,深感自己的不足,决定重新好好学习一下<Java核心技术>这本书,曾经靠这本书走入Java的世界,但是也有很多的地方被我疏漏过去了,因此也是作 ...

随机推荐

  1. AT Tool --- android手机发送at指令

    之前网上也有一款类似的软件,估计是华为内部人员开发的,不过很变态,不但只支持华为的几款手机,而且只能发一条AT命令,然后就不让你发了:所以很气愤,今天花了一天时间自己写了这么款程序,而且是支持所有An ...

  2. .net解决程序集版本冲突的方法

    以log4net为例,分为两种情况 1.不同version,相同publicKeyToken 在bin里放较新版本的dll 并在web|app.config的<configuration> ...

  3. 项目管理-Kick OFF 简称KO

    KO的内容包括以下几个过程: 1.项目背景 我们项目在哪里?说过去,做项目之前的“悲惨境地”,明确问题根源在哪里,明白为什么要做这个项目. 2.项目意义.目的与目标 我们项目去哪里?说将来,项目完成之 ...

  4. 关于Windows2008服务器设置MIME后仍然无法播放MP4的解决方法

    最近遇到了一个非常邪门的故障,重新安装了Windows2008服务器后 Mp4无法正常播放: 整个互联网中关于设置MP4的方法基本都是教你如何在IIS中设置MIME 本文讨论的不是如何教你设置MIME ...

  5. 微信开发之移动手机WEB页面(HTML5)Javascript实现一键拨号及短信发送功能

    在做一个微信的微网站中的一个便民服务电话功能的应用,用到移动web页面中列出的电话号码,点击需要实现调用通讯录,网页一键拨号的拨打电话功能. 如果需要在移动浏览器中实现拨打电话,发送email,美国服 ...

  6. myeclipse2015CI Server显示derby服务器去除方法

    找到myeclipse的安装目录 myeclipse2015CI\configuration\org.eclipse.equinox.simpleconfigurator 打开文件bundles.in ...

  7. oracle数据库如何创建表空间,临时表空间

    目标 1.创建表空间 lxy 2.创建临时表空间tmp_lxy create tablespace lxy datafile '/u01/app/oracle/oradata/LXY/lxy.dbf' ...

  8. Linux分区和挂载硬盘

    分区: [root@code-svn ~]# fdisk /dev/sdb WARNING: DOS-compatible mode is deprecated. It's strongly reco ...

  9. I prefer fcitx

    sudo add-apt-repository ppa:fcitx-team/nightly sudo apt-get update Then, you should install Fcitx.Fc ...

  10. SQL语句Where中使用别名作为判断条件

    当我们使用某个表达式作为输出的一列时,我们无法再Where条件中直接使用该列作判断条件.   例如下面的SQL语句: select id, (c1 + c2) as s from t1  where ...