下面是看
Java核心技术卷1时觉的有必要进行总结的知识点。虽然有一些知识不是很常用,但是还是很有必要掌握的,对于构建完整的知识体系十分的重要。
我们经常需要将一种数值类型转换成另外一种数值类型。

其中实线表示的是无精度丢失的转换,虚线表示可能有精度丢失的转换。
比如将byte转换成short精度不会损失,而将int转换成float将会导致精度的损失。
对于 byte、short、char型的相互运算,会先将它们强转为int型再进行运算.
byte a = 1;
byte b = 2;
short c = 3;
short d = 4;
char e = 'a';
char f = '\u0000';
byte类型相加

byte + short:

byte + char:

short + char:

char + char:

位运算符在实际的工作中虽然用的不多,但是知道它的语法和原理也是很有必要的。


在本节中会涉及到原码,反码和补码的知识可以参考下面的文章
如果想对于String有更加详细的认识,可以参考文章:字符串参考文章
下面主要讲的是
StringBuilder,是线程不安全的,但是效率最高的。效率的高低排序
StringBuilder>StringBuffer(线程安全的)>String

StringBuilder builder = new StringBuilder();
当需要添加内容的时候,可以调用append()
builder.append(ch) //添加一个单一的字符
builder.append(str) //添加一个字符串

String completedString = builder.toString();




但是需要注意的嵌套的两个块不能有同名变量的声明。如下面的代码中将会报错。
public class Exer {
public static void main(String[] args){
int a;
{
int a;
int b;
}
}
}




其中的case标签可以是如下:

在java中为了达到和c语言中goto语句相似效果的语句可以使用带标签的break语句,不过不太建议使用这个语句。
具体的用法


在java中允许长度为0的数组,注意,需要注意的是长度为
0的数组和null并不相同
下面两种定义长度为0的数组
int[] b = new int[0]; //长度为0的数据组
int[] c = new int[]{}; //长度为0得到数组

String[] a = new String[10];

for(int i =0;i<10;i++) name[i] = "";
需要注意的是如果访问数组下标以为的元素,将会产生数组下标越界异常
语法格式为
for(variable:collection) statement
它定义了一个变量用于暂存集合中的每一个元素,并执行相应的语句(也可以是语句块)。collection这一集合表达式必须是一个数组或者是一个实现了Iterable接口的类对象(例如ArrayList)。
for(int element:a) System.out.println(element);将打印数组中每一个元素,一个元素占用一行
int[] wei =new int[]{1,2,3,4,5};
System.out.println(Arrays.toString(wei));

本章为Java的程序设计结构的基础语法部分,在看完本章之后,对于一些觉得有疑惑的地方进行了代码的验证,同时对于一些不是很熟悉的知识例如位运算书中讲的不是很详细,并且感觉大部分的内容都已经忘记,因此为了弥补不足,通过查阅资料的方式进行进一步的学习。同时对于之前没有了解过的知识有了初步了认识比如带标签的break语句。看完本章的内容,整体上收获挺多,后面将更加更加认真的观看其它章节的内容,弥补不足指出。