1、java输入输出
利用Scanner可以完成各种输入
import java.util.Scanner;
public class MyTest {
public static void main(String[] args) {
Scanner mySca = new Scanner(System.in);
System.out.println("please enter your name");
String name = mySca.nextLine();
System.out.println("your age ?");
int age = mySca.nextInt();
System.out.println(name + age);
}
}
使用Sonsole对象可以实现密码的读入(非显式)
2、输出
继承C语言风格:
3、java读取系统当前时间:
long s = System.currentTimeMillis() / 1000L;
SimpleDateFormat dFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(dFormat.format(new Date(s * 1000)))
4、文件读取与写人
读入文件与从控制台读入数据类似:
Scanner in = new Scanner(paths.get("c:\\dir\\filename.txt"))
如果是写人文件则为:
PrintWriter out = new PrintWriter("file.txt")
5、continue关键字
continue语句会越过当前循环体的剩余部分,立刻跳到循环首部。
如果将continue语句用于for循环中,就可以跳到循环的更新部分。(i++的地方)
6、数组
数组是一种用来存储同一类型值的集合,在声明数组变量时需要注明数组类型 int [] a = new int[100] ;
数组的初始化:
1、可以直接赋值,并不需要用到new int[] arr = {1,2,3,4};
2、可以初始化一个匿名数组 new int[] {1,2,3,4};
使用这种语法形式可以在不创建新变量的情况下重新初始化一个数组: arr= new int[] {1,2,3,4};
数组的拷贝:
java中允许将一个数组变量拷贝给另一个数组变量,这时两个变量引用同一个数组int[] myarr= arr;(如果改变某个数组中的值,另一个也会跟着改变)
如果希望将一个数组中所有的值拷贝到一个新的数组中,可以使用Arrays类的copyof方法:
public class MyTest {
public static void main(String[] args) {
int[] arr = new int[10];
for(int i=0;i<arr.length;i++){
arr[i]=i;
}
int[] myarr = Arrays.copyOf(arr, arr.length);
arr[1] = 0;
for(int ele :myarr){
System.out.println(ele);
}
}
}
copyof 的第二个参数为数组的长度,这个参数通常用来增加数组的长度,会自动为为增加的长度进行赋初值。
数组的排序:
使用Arrays类的sort()方法
Arrays.sort(myarr);
多维数组:
注意:java中并没有多维数组,例如二维数组只是一维数组的特例,它的每个元素都是一个数组而已,因此,我们可以创建不规则数组。
7、for each循环
这种增强型for循环语句格式为:
for(variable: collection) statement
public class MyTest {
public static void main(String[] args) {
int[] arr = new int[10];
for(int i=0;i<arr.length;i++){
arr[i]=i;
}
for(int ele:arr){
System.out.println(ele);
}
}
}