java基础之输入输出,数组
2016-01-05 21:08
435 查看
文件输入输出:
Scanner(File f)//构造一个从给定文件读取数据的Scanner。
Scanner(String data)//构造一个从给定字符串读取数据的Scanner。
PrintWriter(String filename)//构造一个将数据写入文件的PrintWriter。
static Path get(String pathname)//根据给定一个路径名构造一个Path。
例如:
对文件进行读取,用file构造一个Scanner对象,如下所示。
Scanner in = new Scanner(Path.get("myfile.txt"))
想写入文件就需要构造一个PrintWriter对象。
PrintWriter out = new PrintWriter("myfile.txt")。
输入和输出:
输出:
我们接触java时可能就对输出很了解了。输出只需要调用System.out.println()方法即可。
输入:
输入相对输出麻烦一点。首先要构造一个Scanner对象,并与标准输入流System.in关联。
Scanner in = new Scanner(System.in)
然后就可以调用Scanner类的方法。示例:
Public class InputText{
public static void main(String[] args){
Scanner in = new Scanner (System.in);
System.out.println("What is your name?"):
String name = in.nextLine(); //需要自己键入。
System.out.println("How oid are you ?"):
Int age = in.nextInt(); //需要自己键入。
}
}
数组:
声明一个数组:
int[] a;
这条语句只声明而没有初始化,应该使用new创建一个数组。
int[] a = new int[100];
创建了一个可以存储100个整数的数组。数组长度不要求是常量:new int
会创建一个长度为n的数组。
String[] name = new String[10]
创建一个数字数组时,所有元素都为0,boolean数组所有元素都为false,创建一个字符串数组所有元素初始值都为null。
可用增强for循环来遍历数组。
for(variable : collection) statement
collection 这个集合必须是一个数组或者是实现了Iterable接口的类或者对象。如(ArriyList)
打印集合a中的元素。
for(int element : a)
System.out.println(element);
数组初始化:
int[] smallPrints = {1,2,3,4,5}
new int[] {1,2,3,4,5}
smallPrimes = new int[]{1,2,3,,4,5}
创建一个数组并进行初始化。
数组拷贝:
int[] luckyNumbers = smallNumbers;
int[] copiedLuckyNumbers = Arrays.copyOf(luckyNumbers,2*luckyNumbers.length)
第二个参数为新数组的长度;
数组排序:
要想对数值型数值进行排序,可以使用Arrys类中sort方法,
int[] a = new int[1000]
.........
Arrys.sort(a)
设计一个程序:
int[] numbers = new int
;
int[] result = new int[];
for(i=0; i<n;i++)
{ numbers[i]= i+1;
}
for(j=0;j<10;j++)
{
int a = (int)(Math.random()*n);
result[j] = numbers[a];
numbers[a] = numbers[n-1];
n--;
}
Array.sort(result);
for(int element : result)
System.out.println(element);
Arrays还提供了一些其他的方法:
static String toString(type[] a )//返回包含a中数据元素的字符串,这些数据元素被放在括号内,并用逗号分隔开。
static type copyOf(type[] a , int length);//
static type copyOf(type[] a , int start, int end);//返回一个与a类型相同的数组,其长度为length或者end-start,数组元素为a的值。 start / end分别为起始和终止下标。 length为数组的长度。
static void sort(type[] a)//对数组进行排序。
static int binarySearch(type[] a, type v)//
static int binarySearch(type[] a, int start, int end , type v)//采用二分搜索算法查找V,如果查找成功则返回相应的下标值,否则,返回一个负数值r
static void fill(type[] a , type v )//将数组中的所有元素都设置成v。
static boolean equals(type[] a, type[] b);//如果两个数组大小相同,并且下标相同的元素都对应相等,返回true。
Scanner(File f)//构造一个从给定文件读取数据的Scanner。
Scanner(String data)//构造一个从给定字符串读取数据的Scanner。
PrintWriter(String filename)//构造一个将数据写入文件的PrintWriter。
static Path get(String pathname)//根据给定一个路径名构造一个Path。
例如:
对文件进行读取,用file构造一个Scanner对象,如下所示。
Scanner in = new Scanner(Path.get("myfile.txt"))
想写入文件就需要构造一个PrintWriter对象。
PrintWriter out = new PrintWriter("myfile.txt")。
输入和输出:
输出:
我们接触java时可能就对输出很了解了。输出只需要调用System.out.println()方法即可。
输入:
输入相对输出麻烦一点。首先要构造一个Scanner对象,并与标准输入流System.in关联。
Scanner in = new Scanner(System.in)
然后就可以调用Scanner类的方法。示例:
Public class InputText{
public static void main(String[] args){
Scanner in = new Scanner (System.in);
System.out.println("What is your name?"):
String name = in.nextLine(); //需要自己键入。
System.out.println("How oid are you ?"):
Int age = in.nextInt(); //需要自己键入。
}
}
数组:
声明一个数组:
int[] a;
这条语句只声明而没有初始化,应该使用new创建一个数组。
int[] a = new int[100];
创建了一个可以存储100个整数的数组。数组长度不要求是常量:new int
会创建一个长度为n的数组。
String[] name = new String[10]
创建一个数字数组时,所有元素都为0,boolean数组所有元素都为false,创建一个字符串数组所有元素初始值都为null。
可用增强for循环来遍历数组。
for(variable : collection) statement
collection 这个集合必须是一个数组或者是实现了Iterable接口的类或者对象。如(ArriyList)
打印集合a中的元素。
for(int element : a)
System.out.println(element);
数组初始化:
int[] smallPrints = {1,2,3,4,5}
new int[] {1,2,3,4,5}
smallPrimes = new int[]{1,2,3,,4,5}
创建一个数组并进行初始化。
数组拷贝:
int[] luckyNumbers = smallNumbers;
int[] copiedLuckyNumbers = Arrays.copyOf(luckyNumbers,2*luckyNumbers.length)
第二个参数为新数组的长度;
数组排序:
要想对数值型数值进行排序,可以使用Arrys类中sort方法,
int[] a = new int[1000]
.........
Arrys.sort(a)
设计一个程序:
int[] numbers = new int
;
int[] result = new int[];
for(i=0; i<n;i++)
{ numbers[i]= i+1;
}
for(j=0;j<10;j++)
{
int a = (int)(Math.random()*n);
result[j] = numbers[a];
numbers[a] = numbers[n-1];
n--;
}
Array.sort(result);
for(int element : result)
System.out.println(element);
Arrays还提供了一些其他的方法:
static String toString(type[] a )//返回包含a中数据元素的字符串,这些数据元素被放在括号内,并用逗号分隔开。
static type copyOf(type[] a , int length);//
static type copyOf(type[] a , int start, int end);//返回一个与a类型相同的数组,其长度为length或者end-start,数组元素为a的值。 start / end分别为起始和终止下标。 length为数组的长度。
static void sort(type[] a)//对数组进行排序。
static int binarySearch(type[] a, type v)//
static int binarySearch(type[] a, int start, int end , type v)//采用二分搜索算法查找V,如果查找成功则返回相应的下标值,否则,返回一个负数值r
static void fill(type[] a , type v )//将数组中的所有元素都设置成v。
static boolean equals(type[] a, type[] b);//如果两个数组大小相同,并且下标相同的元素都对应相等,返回true。
相关文章推荐
- spring与mybatis三种整合方法
- Java的匿名对象
- Java异常捕获之try...catch...finally语句
- Java温习(1)
- java 配置环境变量
- java期末复习之SCJP题库学习笔记
- java中参数传递
- java中final关键字
- Java概述
- java 反射机制 / 反射new 对象 / 反射方式调用方法
- 简析java.lang.String类
- Java类的初始化过程及清理
- Java 字符串索引indexOf
- struts的过滤器代码
- 25个Java机器学习工具&库
- Eclipse快捷键 10个最有用的快捷键
- struts.xml中namespace的配置之浏览器兼容性
- Java基础知识归纳-1-面向对象
- Spring学习笔记—Spring之旅
- Socket分片:基于Netty的Java实现