首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础知识之Scanner类和String类学习,讲明白了,适合初学者

Java基础知识之Scanner类和String类学习,讲明白了,适合初学者

作者头像
用户1289394
发布2018-02-27 15:39:29
5170
发布2018-02-27 15:39:29
举报
文章被收录于专栏:Java学习网Java学习网

1、Scanner 的概述和方法介绍

A:Scanner 的概述

B:Scanner 的构造方法原理

Scanner(InputStream source)

System 类下有一个静态的字段:

public static final InputStream in; 标准的输入流,对应着键盘录入。

C: 一般方法

hasNextXxx() 判断是否还有下一个输入项 , 其中 Xxx 可以是 Int,Double 等。如果需要判断是否包含下一个字符串,则可以省略 Xxx

nextXxx() 获取下一个输入项。 Xxx 的含义和上个方法中的 Xxx 相同 , 默认情况下, Scanner 使用空格,回车等作为分隔符

网络配图

2、Scanner 获取数据出现的小问题及解决方案

A: 两个常用的方法:

public int nextInt(): 获取一个 int 类型的值

public String nextLine(): 获取一个 String 类型的值

B: 案例演示

a: 先演示获取多个 int 值,多个 String 值的情况

b: 再演示先获取 int 值,然后获取 String 值出现问题

c: 问题解决方案

第一种:先获取一个数值后,在创建一个新的键盘录入对象获取字符串。

第二种:把所有的数据都先按照字符串获取,然后要什么,你就对应的转换为什么。 ( 后面讲 )

3、String 类的概述

A:String 类的概述

通过 JDK 提供的 API ,查看 String 类的说明

可以看到这样的两句话。

a: 字符串字面值 "abc" 也可以看成是一个字符串对象。

b: 字符串是常量,一旦被赋值,就不能被改变。

网络配图

4、String 类的构造方法

A: 常见构造方法

public String(): 空构造

public String(byte[] bytes): 把字节数组转成字符串

public String(byte[] bytes,int index,int length): 把字节数组的一部分转成字符串

public String(char[] value): 把字符数组转成字符串

public String(char[] value,int index,int count): 把字符数组的一部分转成字符串

public String(String original): 把字符串常量值转成字符串

B: 案例演示

演示 String 类的常见构造方法

5、String 类的常见面试题

(1)、 判断定义为 String 类型的 s1 和 s2 是否相等

String s1 = "abc";

String s2 = "abc";

System.out.println(s1 == s2);

System.out.println(s1.equals(s2));

(2)、下面这句话在内存中创建了几个对象 ?(思考题,在评论中回答)

String s1 = new String("abc");

网络配图

(3)、判断定义为 String 类型的 s1 和 s2 是否相等

String s1 = new String("abc");

String s2 = "abc";

System.out.println(s1 == s2);

System.out.println(s1.equals(s2));

(4)、判断定义为 String 类型的 s1 和 s2 是否相等

String s1 = "a" + "b" + "c";

String s2 = "abc";

System.out.println(s1 == s2);

System.out.println(s1.equals(s2));

(5)、 判断定义为 String 类型的 s1 和 s2 是否相等

String s1 = "ab";

String s2 = "abc";

String s3 = s1 + "c";

System.out.println(s3 == s2);

System.out.println(s3.equals(s2));

(6)、String 类的判断功能

A:String 类的判断功能

boolean equals(Object obj): 比较字符串的内容是否相同 , 区分大小写

boolean equalsIgnoreCase(String str): 比较字符串的内容是否相同 , 忽略大小写

boolean contains(String str): 判断大字符串中是否包含小字符串

boolean startsWith(String str): 判断字符串是否以某个指定的字符串开头

boolean endsWith(String str): 判断字符串是否以某个指定的字符串结尾

boolean isEmpty(): 判断字符串是否为空。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java学习网 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档