1.用户交互scanner

  1. Next()

java 接受string数组 java接收数组 scanner_java 接受string数组

java 接受string数组 java接收数组 scanner_java 接受string数组_02

public class demo1 {
    public static void main(String[] args) {
        //创建一个scanner对象
        Scanner scanner = new Scanner(System.in);
        System.out.println("请使用next方式进行接收:");
        //判断有无输入字符
        if(scanner.hasNext()){
            String str=scanner.next();
            System.out.println("输入的内容是"+str);
        }
        //关闭scanner,否则一只占用资源
        scanner.close();
    }
}
/*输出结果是:
请使用next方式进行接收:
happy newyear
输入的内容是happy
*/
  1. Nextline()

java 接受string数组 java接收数组 scanner_System_03

public class demo2 {
    public static void main(String[] args) {
        //创建一个scanner对象
        Scanner scanner = new Scanner(System.in);
        System.out.println("请使用nextline方式进行接收:");
        //判断有无输入字符
        if(scanner.hasNextLine()){
            String str=scanner.nextLine();
            System.out.println("输入的内容是"+str);
        }
        //关闭scanner,否则一只占用资源
        scanner.close();
    }
}
/*
请使用nextline方式进行接收:
happy newyear
输入的内容是happy newyear
*/
  1. 一定注意close掉对象,否则一直占用

2.scanner进阶使用

  1. 在while中使用scanner
public class demo2 {
    public static void main(String[] args) {
        //创建一个scanner对象
        Scanner scanner = new Scanner(System.in);
        //判断有无输入字符
        double sum=0;
        int m=0;
        while(scanner.hasNextDouble())
        {
            double x=scanner.nextDouble();
            sum+=x;
            m++;
        }
        System.out.println(""+sum);
        System.out.println(""+m);
        //关闭scanner,否则一只占用资源
        scanner.close();
    }
}

***跳过顺序结构,if,switch,while,dowhile,for, break,coutinue,goto

3.for循环

  1. System.out.println();
  2. System.out.print();
  3. 打印99乘法表
for(int i=1;i<10;i++)
        {
            for(int j=1;j<=i;j++)
            {
                System.out.print(""+i+"*"+j+"="+(i*j)+"\t");
            }
            System.out.println();
        }
  1. 快捷方式:5.for

4.增强for

  1. 用于遍历数组
int[] numbers={1,2,3};
for(int x:numbers){
    System.out.print(x+"\t");
}
  1. debug

5.方法

java 接受string数组 java接收数组 scanner_函数参数_04

  1. 方法名

· 函数名用首字母大写的英文单词组合表示(如用动词+名词的方法),其中至少有一个动词

· 应该避免的命名方式

§ 和继承来的函数名一样。即使函数的参数不一样,也尽量不要这么做,除非想要重载它

§ 只由一个动词组成,如:Save、Update。改成如:SaveValue、UpdateDataSet则比较好

· 函数参数的命名规则

§ 函数参数应该具有自我描述性,应该能够做到见其名而知其意

§ 用匈牙利命名法命名

public static void main(String[] args) {
      int sum=add(1,2);
      System.out.println(sum);
  }
  public static int add(int a,int b)
  {
      return a+b;
  }

6.方法的重载

  1. 要求

java 接受string数组 java接收数组 scanner_java 接受string数组_05

7.命令行传参

  1. 先用javac进行编译
  2. 再回到代码的包的上层,开始执行
public static void main(String[] args) {
        for (int i = 0; i < args.length; i++) {
            System.out.println("args["+i+"]"+args[i]);
        }
    }

4.

java 接受string数组 java接收数组 scanner_java 接受string数组_06

8.可变参数

  1. 多个同类型的参数,数量可以不确定
  2. 只能有一个,且放在参数的最后
public class demo2 {
    public static void main(String[] args) {
        demo2 demo=new demo2();
        demo2.test(1,2,34);
    }
    public static void test(double d,int ... x)
    {
        System.out.println(x[1]);
    }
}

递归调用,没看

9.数组

  1. 申明数组

int[] nums1;//首选

int nums2[];

  1. 创建数组
    dataType[] arrayRefVar =new dataType[arraySize];

nums1=new int[10];

  1. 给数组赋值
  2. 获取数组长度

nums1.length

  1. 声明数组
    放在栈中,并不实际存在
  2. 创建数组
    放在堆中
  3. 静态初始化
int[] a={1,2,3,4,5};
  1. 动态初始化
int[] b;
b[0]=1;
...

11.arrays类详细

  1. 在idea中输入Arrays
  2. 选择goto,选择deceleration and usages,选择左下角structure,可以查看arrays类的方法目录
  3. Arrays.sort()等

12.稀疏数组