《Java 2核心技术卷一》(读书笔记一)

来源:互联网 发布:在线视频解析源码 编辑:程序博客网 时间:2024/06/10 08:35

      由于未来工作需要,从C/C++转型到Java编程。 计划先从《Java 2核心技术卷一/卷二》开始,首先掌握Java编程基础,然后再进行Web开发的实践。

      写一些容易搞混的Java设计基础。

JDK目录树

jdk/
bin        编译器和工具
demo    演示
include  用于编译本地方法的文件
jre        Java运行环境文件
lib         类库文件
src        类库源文件(展开src.zip之后)

 

读取输入

构造Scanner对象(定义于 java.util.*中),它附属于“标准输入流”System.in。接着使用Scanner类的各种方法实现输入操作。

nextLine方法:将输入一行,在输入行中可能包含空格。

next方法:以空白符作为分隔符。

nextInt方法:读取一个整数。

例如:

Scanner in = new Scanner(System.in);System.out.print("What is your name?");String name = in.nextLine();String firstName = in.next();System.out.print("How old are you?");int age = in.nextInt(); 

 

大数值

BigInteger和BigDecimal类(定义于java.math包中)。

将普通的数值转换为大数值,使用valueOf()方法:

BigInteger a = BigInteger.valueOf(100);

 

处理大数值,要使用大数值中的add、subtract、multiply、divide、mod(余数)方法。

例如:

BigInteger c = a.add(b); //c=a+bBigInteger d = c.multiply(a.add(BigInteger.valueOf(2))); //d=c*(a+2)

  

数组

int[] a= new int[100];

获取数组元素个数: array.length

"for each"循环: for (variable : collection) statement 用于依次出来数组中的每一个元素,无需指定下标。

例如:

for (int element : a){    System.out.println(element);}  //for each element in a and print all 
//数组拷贝:java.lang.Systemstatic void arraycopy(Object from, int fromIndex, Object to, int toIndex, int Count);
//数组排序:java.util.Arraysstatic void sort(type[] a); //使用优化的快速排序算法static int binarySearch(type[]a, type v);//使用二分搜索算法查找值vstatic void fill(type[] a, type v);//将数组的所有元素设置为vstatic boolean equals(type[] a, type[] b);//两数组相等,返回true