常见的对象
-
Scanner的构造方法原理
-
Scanner(InputStream source)
System类下有一个静态的字段:
public static final InputStream in; 标准的输入流,对应着键盘录入。 -
Scanner类的hasNextXxx()和nextXxx()方法
- 基本格式
hasNextXxx() 判断下一个是否是某种类型的元素,其中Xxx可以是Int,Double等。
如果需要判断是否包含下一个字符串,则可以省略Xxx
nextXxx() 获取下一个输入项。Xxx的含义和上个方法中的Xxx相同 - public int nextInt():获取一个int类型的值
public String nextLine():获取一个String类型的值
public String next():获取一个String类型的值
示例代码:
- 基本格式
InputStream in = System.in;
Scanner scanner = new Scanner(in);
scanner.nextLong();
scanner.nextDouble();//其他的类似
int i = scanner.nextLong();
System.out.println(i);
- 使用nextLine()方法时,你先录入整数,在录入字符串,会导致字符串录入不进去,你可以再录入字符串时,重新再创建一个Scanner 对象
- 录入的字符串中间,有空格,空格后面的内容不录入
public class hasXXX {
public static void main(String[] args) {
//haxxx方法示例代码
while (true){
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数");
//hasXXX 判断录入数据的 类型
if (scanner.hasNextInt()) {
int i = scanner.nextInt();
System.out.println(i);
break;
} else {
System.out.println("录入类型不正确,请重新输入一个整数");
}
}
}
}
字符串 String类的概述
- 字符串是由多个字符组成的一串数据(字符序列)
字符串可以看成是字符数组 - 字符串字面值"abc"也可以看成是一个字符串对象。
字符串是常量,一旦被创建,就不能被改变。
常见的构造方法
public String():空构造
public String(String original):把字符串常量值转成字符串
public String(byte[] bytes):把字节数组转成字符串
public String(byte[] bytes,int index,int length):把字节数组的一部分转成字符串(index:表示的是从第几个索引开始, length表示的是长度)
public String(char[] value):把字符数组转成字符串
public String(char[] value,int index,int count):把字符数组的一部分转成字符串
常见的String类的获取功能
public int length(): 获取字符串的长度。
public char charAt(int index): 获取指定索引位置的字符
public int indexOf(int ch): 返回指定字符在此字符串中第一次出现处的索引。
public int indexOf(String str): 返回指定字符串在此字符串中第一次出现处的索引。
public int indexOf(int ch,int fromIndex):返回指定字符在此字符串中从指定位置后第一次出现处的索引。
public int indexOf(String str,int fromIndex): 返回指定字符串在此字符串中从指定位置后第一次出现处的索引。
可以顺带提一下lastIndexOf系列
public String substring(int start): 从指定位置开始截取字符串,默认到末尾。
public String substring(int start,int end): 从指定位置开始到指定位置结束截取字符串。
常见的String类的转换功能
public byte[] getBytes(): 把字符串转换为字节数组。
public char[] toCharArray(): 把字符串转换为字符数组。
public static String valueOf(char[] chs): 把字符数组转成字符串。
public static String valueOf(int i): 把int类型的数据转成字符串。
注意:String类的valueOf方法可以把任意类型的数据转成字符串。
public String toLowerCase(): 把字符串转成小写。
public String toUpperCase(): 把字符串转成大写。
public String concat(String str): 把字符串拼接。