您的位置:首页 > 编程语言 > Java开发

Java2核心技术第七版的学习笔记(三) Fundamental Programming Structures in Java(Java语言的基础)(四):

2007-02-12 09:20 1336 查看
七、输入和输出
1、Java5.0中的输入,要import java.util.*;
Scanner in = new Scanner(System.in);
String name = in.nextLine(); //读入一行
String firstName = in.next(); //读入一个单词,以空格分隔
int age = in.nextInt(); //读入一个整数,in.nextdouble()则读入一个浮点数
2、格式化输出,有各种各样的属性可供输出。
System.out.printf("%d", a );

八、控制流程
1、块,就是{}之间的部分,C++与Java的不同是在内块中无法定义外块中的东西。
public static void main(String[] args)
{
int n;
. . .
{
int k;
int n; // 不能重复定义,而在C++中是可以的。
. . .
}
}
2、选择和循环语句基本上和C和C++中相同。
3、带标签的break和continue。
可以用break和continue到指定的标签。

九、大数据
就主要是BigInteger 和 BigDecimal,没什么特别的。

十、数组
int[] a = new int[100]
数据是从0~99,如果引用100会出异常。
数组的长度可用a.length获得,数组的长度不能改变,如果需要改变用array list。

for each
可以依个访问,必须实现Iterable的接口。

初始化可以使用:
int[] smallPrimes = { 2, 3, 5, 7, 11, 13 };
或者
smallPrimes = new int[] { 17, 19, 23, 29, 31, 37 };

可以定义 new int[0]这种形式。

数组的拷贝:
int[] luckyNumbers = smallPrimes; // luckyNumbers 和 smallPrimes 引用同一片内存
要使用不同的内存可以使用
System.arraycopy(from, fromIndex, to, toIndex, count);

命令行参数
java Message -g cruel world

args[0]: "-g"
args[1]: "cruel"
args[2]: "world"

数组的排序:Arrays.sort(a)

binarySearch 查找,如果找到返回index ,如果没有找到返回-r,-r-1是插入的位置
fill 填相同的值

多维数组
double[][] balances;
balances = new double[NYEARS][NRATES];

int[][] magicSquare =
{
{16, 3, 2, 13},
{5, 10, 11, 8},
{9, 6, 7, 12},
{4, 15, 14, 1}
};

for (int i = 1; i < balances.length; i++)
{
for (int j = 0; j < balances[i].length; j++)
{
double oldBalance = balances[i - 1][j];
double interest = . . .;
balances[i][j] = oldBalance + interest;
}
}

for (double[] row : balances)
for (double b : row)
do something with b

不等列的数组
int[][] odds = new int[NMAX + 1][];

for (int n = 0; n <= NMAX; n++)
odds
= new int[n + 1];

for (int n = 0; n < odds.length; n++)
for (int k = 0; k < odds
.length; k++)
{
// compute lotteryOdds
. . .
odds
[k] = lotteryOdds;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐