Day one

API概述

API(Application Programming Interface)应用程序编程接口。Java API是一本程序员的字典,我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用他们。

API使用**

1.如上图所示文件,这就是由sun公司为我们提供的Java API,里面基本有你所不会的Java基础的所有内容。

2.双击打开以后出现的是这样一个界面。

3.一般我们使用的时候先点显示,出现如图界面:

4.我们以字符串类String为例讲解怎么使用API

5.找到API右侧滑块,向下拉,可以看到

6.继续往下拉,我们可以查看到这个类中所提供的所有方法

7.我们来看一下方法的详细说明都有什么

Scanner类概述**

java.util.Scanner是Java5的新特征,主要功能是键盘录入数据。

构造方法**

构造一个新的Scanner,它生成的值是从指定的输入流扫描的。source:输入流

public Scanner(InpuStream source):

例如:

Scanner scanner = new Scanner(System.in);

成员方法**

判断扫描器中当前扫描位置后是否还存在下一段

public boolean hasNext()

如何在此扫描器的输入中存在另一行,则返回true。

public boolean hasNextLine()

查找并返回来自此扫描器的下一个完整标记。

public String next()

此扫描器执行当前行,并返回跳过的输入信息。

public String nextLine()

代码演示

把键盘录入的信息全部打印输出到控制台

public static void main(String [] args){

Scanner s = new Scanner(System.in);

while(s.hasNextLine()){

System.out.println(s.nextLine());

}

}

将输入信息的下一个标记扫描为一个int。

public int nextInt()

将输入信息的下一个标记扫描为一个long。

public long nextLong()

将输入信息的下一个标记扫描为一个short

public short nextShort()

注意事项**

1.使用nextInt()时输入的内容必须为数字,如果输入了字符串,程序结束并且会报异常:

java.util.InputMismatchException

2.nextInt()和next()判断读取结束的标识是空白符;比如空格,比如回车,比如tab...,而nextLine()的结束标识是回车也就是"\r"

import java.util.Scanner;

public class Test{

        public  staitic void main(String[]args){

                Scanner scanner = new Scanner(System.in);

                String str = scanner.next();

System.out.println("str"+str);//输出字符串的内容

        }

}

import java.util.Scanner;

public class Test {

        public static void main(String[] args){

            Scanner scanner = new Scanner(System.in);

            String newLine = scanner.nextLine();

              System.out.println("newLine:"+newLine);//输出新行内容

    }

}

3.next()和nextInt()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键,Tab键或Enter键等结束符,next()方法会自动将其去掉,而nextLine()不管是否读到有效字符,遇到结束符回车都会结束

4.next()和nextInt()读到有效字符后不会将结束符擦除,而nextLine()是会将结束符擦除的,看如下案例:

public class Test {

          public static void main(String[] args){

            Scanner scanner = new Scanner(System.in);

            String str = scanner.next();

            System.out.println("str:"+str);//输出字符串的内容

            String newLine = scanner.nextLine();

            System.out.println("newLine:"+newLine);//输出新行内容

            String newLine2 = scanner.nextLine();

            System.out.println("newLine2:"+newLine2);//输出新行内容

    }

}

第一次输入“你好 tom”,回车:

a.str值为你好,因为str使用next()获取,结束标识为空格

b.str使用的next()获取的时候不会擦除结束标识空格,而且有回车,所以newLine识别到有结束符内 容就直接就出来了,为“ tom”(前面有空格)

c.因为第一个nextLine()将结束标识擦除了,所以newLine2的内容还需要再输入,假设 nextLine()不会擦除结束标识回车,则第一次输入回车的时候,两个nextLine()都会拿到值(第一个是“ tom”,第二个是“”),程序就结束了

5.同一个Scanner对象,不能先录入int,再录入String值,会出异常。

a.使用两个Scanner对象分别接收即可。

b.将第一个值,使用String类型,后转换为int即可。

int a = Integer.parseInt(str);

解决方式一: 

Scanner sc1 = new Scanner(System.in);

Scanner sc2 = new Scanner(System.in);

int num1 = sc1.nextInt();

String num2 = sc2.nextLine();

System.out.println(num1+":" + num2);

解决方式二:

Scanner sc3 = new Scanner(System.in);

String num1 = sc3.nextLine();

String num2 = sc3.nextLine();

int num3 = Integer.parseInt(num1);

//将String类型的数值,转化为int类型 (后续讲解)

System.out.println(num3+":" +num3);

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容