Java良葛格 学习笔记

学习一个新的事物时,如果遇到一些概念无法很快理解,这可能是因为要理解概念会需
要其它概念先建立起来,所以先暂时放下这个疑问也是一个学习方法,称之为“存疑” ,
在以后的学习过程中待必要的概念学会后,目前的疑问自然也会解开。

变量名称可以使用下划线作为开始,通常使
用下划线作为开始的变量名称,表示它是私有的(Private),只在程序的某个范
围使用,外界并不需要知道有这个变量存在。这样的变量名称常用于面向对象
程序设计中类的私有成员(Private Member),这样的命名方式偶而也会看到。一
个定义的例子如下:
double _window_center_x;
double _window_center_y;

,在数字设计上有 AND、OR、
NOT、XOR 与补码等运算,在 Java 中提供这些运算的就是位运算符。它们对
应的分别是&(AND)、|(OR)、^(XOR)与~(补码)。

AND 运算:
0 AND 0 0
0 AND 1 0
1 AND 0 0
1 AND 1 1

OR 运算:
0 OR 0 0
0 OR 1 1
1 OR 0 1
1 OR 1 1

XOR 运算:
0 XOR 0 0
0 XOR 1 1
1 XOR 0 1
1 XOR 1 0

在位运算上,Java 还有左移(<<)与右移(>>)两个运算符。左移运算会将所
有的位向左移指定的位数,左边被挤出去的位会被丢弃,而右边会补上 0;右
移运算则相反,会将所有的位向右移指定的位数,右边被挤出去的位会被丢弃,
最左边补上原来的位,即左边原来是 0 就补 0,原来是 1 就补 1。

public class ShiftOperator {
public static void main(String[] args) {
int number = 1;
System.out.println( "2 的0 次方: " + number)

number = number << 1;
System.out.println("2 的 1 次方: " + number)

number = number << 1;
System.out.println("2 的 2 次方: " + number);

number = number << 1;
System.out.println("2 的 3 次方:" + number);
}
}

执行结果:
2 的 0 次方: 1
2 的 1 次方: 2
2 的 2 次方: 4
2 的 3 次方:8
实际来左移看看就知道为何可以如此做次方运算了:
00000001 ---> 1
00000010 ---> 2

00000100 ---> 4
00001000 ---> 8

位运算对初学者来说的确不常用,但如果用得恰当,可以提高程序的运算效
率。

---------------------------------------------------------------------------------------------------------

数组的索引值由 0 开始并不是没有原因的。事实上索引值表示的是:所指定的数组元素
相对于数组第一个元素内存位置的位移量(Offset)。索引为 0 表示位移量为 0,所以就
是指第一个元素,而索引 9 就是指相对于第一个元素的位移量为 9。不过在 Java 中您
不直接处理关于内存地址的操作,以上的观念主要是让您了解一下数组索引的运作原
理。

=运算用于基本数据类型时,是将值复制给变量,但当它
用于对象时,则是将对象指定给参考引用名称来参考引用。也可以将同一个对
象指定给两个参考引用名称,当对象的值由其中一个参考引用名称进行操作而
变更时, 另一个参考引用名称所参考引用到的值也会变动。------------------数组赋值引用

sort()
帮助您对指定的数组排序,所使用的是快速排序法
binarySearch() 让您对已排序的数组进行二元搜索,如果找到指定的值就返回该值所在的索引,否则就返回负值
fill()
当您配置一个数组之后,会依数据类型来给定默认值。例如整数数组就初始为 0,可以使用 Arrays.fill()方法将所有的元素设定为指定的值
equals()
比较两个数组中的元素值是否全部相等,如果是将返回 true,否则返回 false

deepEquals()
对数组作深层比较,简单地说,可以对二维仍至三维以上的数组进行比较是否相等
deepToString()
将数组值作深层输出,简单地说,可以对二维仍至三维以上的数组输出其字符串值

在 Java 中字符串不仅仅是字符数组,而且是 String 类的一个实例

---------------------------------------------------------------------------------------

正则表达式最早是由数学家 Stephen Kleene 于 1956 年提出,主要使用在字
符字符串的格式比对,后来在信息领域广为应用,现在已经成为 ISO(国际标准
组织)的标准之一。

上一篇:为何img、input等内联元素可以设置宽、高


下一篇:c++ 实现hashmap