Java · 减熵增长(第2篇)

Summary

这篇探讨Java的数据类型和基本运算。

  • 数据类型
  • 数组
  • 基本运算
  • 控制语句

数据类型

Java的数据类型分为两大类——基本类型primitive type和引用类型reference type。二者的核心区别在于primitive type变量值直接存储在变量名所指的空间上,而reference type变量名所指的空间上存储的是其真正值内容所在地址的引用。
基本类型包括:
1.数值型:整数类型(byte-1 字节, int-4 字节, short-2 字节, long-8 字节)和浮点类型(float-4 字节, double-8 字节)
2.字符型:char
3.布尔型:boolean(只允许取值true/false,不能用0或者非0数来代替)
引用数据类型:
类class、接口interface和数组array

作者语:primitive type和reference type有点像人类中的嫡系与旁支,嫡系待遇最好,但出了问题也要第一个负起责任,旁支是依附于嫡系存在的。这样的体系简化了管理难度。

补充:
1.整数类型中,默认为int。十进制正常书写,八进制以0开头(012),十六进制以0x/0X开头(0x12),二进制以0b/0B开头(0b110)
2.浮点型中,默认为double。科学计数法用e/E表示(3.13e2 = 313)
3.标识符/名字identifier,由数字、字母、下划线_和美元符号$组成,不可以用数字开头,大小写敏感。一般美元符号在系统编译运行时使用。

数组

Java的完整数组创建过程包括三步:1.变量声明;2.初始化(要说明数组长度);3.初始赋值,如下

double[] a;
a = new double[10];
for(int i = 0; i < a.length; i ++)
{
  a[i] = 0.0;
}

这个过程太过复杂,所以Java做了简化,默认初始赋值数值型数组都是0或者引用类型数组都是null。简化后如下:

double[] a = new double[10];

另外,为了简化遍历数组,Java中有增强的for语句,如下:

int[] ages = new int[10];
for(int age: ages)
{
  System.out.println(age);
}

for的条件语句被简化,这段代码更方便的输出了ages这个数组的所有值。
Java中有一维数组和多维数组,多维数组的机理是数组的数组,以二位数组为例,它的一维数组的每个元素都是一个一维数组。

基本运算

Java的基本运算包括算术、关系、逻辑、位、赋值和字符串连接运算符。
1.算术运算符+,-,*,/,%,++,--

作者语:要注意Java中没有乘方运算符,如果计算乘方,则使用math类中的pow(double a, double b)方法,a的b次幂

2.关系运算符>,<,>=,<=,==,!=
3.逻辑运算符!,&,|,^,&&,||
!逻辑非;&逻辑与;|逻辑或;^逻辑抑或;&&短路与;||短路或。
短路逻辑中,&&如果第一个为假则不判断后面表达式,||的短路条件是出现真的判断。
4.位运算符&,|,^,~,>>,<<,>>>
&按位与;|按位或;^按位异或;~取反;>>带符号右移;<<左移;>>>无符号右移。
5.赋值运算符=,+=,-+,*=,/=
只要不超出数据类型的表述范围,当赋值两侧数据类型不一致时,Java会强制类型转换。
6.字符串连接运算符+

控制语句

1.Java的简单语句包括方法掉用语句和赋值语句(以;结尾),注意:Java没有表达式语句(x+y;这个语句在Java中不合法)
2.Java的注释方法:单行注释用//,多行注释用/.../,Java还特有一种doc注释方法是/*.../
3.分支语句,if语句——if(){} else{},和switch语句——switch(){case a:{} case b:{}}
4.循环语句,for循环——for(initial statement; test expression; alter statement){},while循环——initial statement; while(test expression){alter statement},do-while循环——initial statemnt; do{alter statement}while(test expression)
5.中断语句,break语句和continue语句

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,706评论 18 399
  • 昨天又翻译了一篇,看似挺简单,但翻起来时间直接过了12点,果断没翻完就去睡觉了,翻到后面感觉违背了我的初衷,iOS...
    现在的孩子真是阅读 178评论 0 0
  • 掉落的, 不是泪水, 而是痛苦的羽翼, 它不想再飞, 它想离尘埃近些, 踏实。
    井溢阅读 317评论 8 4
  • 【案例】恒丰银行——基于大数据的精准营销模型应用 https://mp.weixin.qq.com/s?src=...
    葡萄喃喃呓语阅读 1,120评论 0 0

友情链接更多精彩内容