今日学习内容总结
- 获取用户输入元素
- 匿名对象
- Random方法
- 对象数组
- ArrayList
- String
Scanner
- 实现键盘输入数据
- 导入包:import java.util.Scanner;
- 使用方法:Scanner scanner = new Scanner(System.in);
- System.in 代表从键盘输入
- 获得键盘输入的数字:scanner.nextInt();
- 获得键盘输入的字符串:scanner.next();
例子
import java.util.Scanner;
public class InputSum {
public static void main(String[] args) {
System.out.println("输入第一个数字");
Scanner scanner=new Scanner(System.in);
int one=scanner.nextInt();
System.out.println("输入第二个数字");
int two=scanner.nextInt();
System.out.println("二者之和为:"+(one+two));
}
}
- 实现文件输入与输出
- 使用方法 :
读取文件:Scanner in = new Scanner(Paths.get("myfile.txt"),"UTF-8");
绝对路径:"C:\mydirectory\myfile.txt"
写入文件可用:PrintWriter out = new PrintWriter("myfile.txt","UTF-8");
匿名对象
不需要赋值给等号左边,直接new。匿名对象只能访问一次成员变量或成员方法
System.out.println(new Scanner(System.in));
Random
- 导入包:import java.util.Random
- 创建:Random r = new Random();
- 使用:r.nextInt()正负所有Int范围内随机生成
r.nextInt(100) 表示从0-100之间随机生成数字,但不包括100
案例:猜数游戏
import java.util.Random;
import java.util.Scanner;
public class RandomGame {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
Random random=new Random();
int num=random.nextInt(30);
while (true){
System.out.println("请输入数字");
int n=scanner.nextInt();
if (n>num){
System.out.println("大了");
}
else if(n<num){
System.out.println("小了");
}
else{
System.out.println("对了");
break;
}
}
}
}
对象数组
- 创建方法:类名[] 对象数组 = new 类名[n];
Person[] person = new Person[3];
Person one = new Person();
person[0] = one;
ArrayList<E>
<E>代表泛型,泛型只能是引用类型,不可以是基本类型,可以是包装类
基本类型 包装类
byte Byte
short Short
int Integer
long Long
char Character
float Float
double Double
boolean Boolean
相对于数组来说,数组长度固定;而ArrayList长度不固定,可使用add()方法往里添加数据
- 导包:import import java.util.ArrayList;
- 创建:ArrayList<String> list = new ArrayList<>();
- 常用方法:add() 向ArrayList中添加数据
get() 从ArrayList中获取数据
remove() 从ArrayList中删除数据
size() 获取ArrayList的长度
ArrayList<String> list = new ArrayList<>();
list.add("Hello");
list.add("World");
list.add("Hello Java");
System.out.println(list);
System.out.println(list.get(1));
list.remove(0);
System.out.println(list);
System.out.println(list.size());
ArrayList遍历:
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
String
- 共有四种创建方法:
- String str1 = new String();创建一个空白字符串
- char[] charArray = {'A','B','C'};
String str2 = new String(charArray);通过字符数组创建 - byte[] byteArray = {97,98,99};
String str3 = new String(byteArray);通过字节数组创建 - String str4 = " "; 直接创建
==是用来进行对象的地址值比较,比较字符串内容用equals();

- 1、分割字符串:str.substring(0,n);代表从字符串中第0号元素到第n-1号元素中分离出来;
str.substring(int index)代表从index开始截取一直到末尾结束;
例子:String str="Hello"; String s=str.substring(0,3);//结果为Hel
- 2、检测字符串是否相等:equals方法
方法一:两个字符串变量比较
str.equals(s);
方法二:字符串字面量与字符串变量比较
"Hello".equals(str);
方法三:不区分大小写比较:equalsIgnoreCase
"Hello".equalsIgnoreCase("hello")
- 3、字符串长度:str.length()
- 4、拼接字符串 str.concat(String str);
- 5、获取指定索引位置的单个字符:str.charAt(int index);
- 6、查找参数字符串在本字符串首次出现的索引位置:str.indexOf(String str);
- 7、字符串中的转换方法:
- 将字符串拆成字符数组toCharArray(); str.toCharArray();
- 将字符串拆分成字节数组 getBytes(); str.getBytes();
- 字符串内容替换 replace(CharSequence oldstring,CharSequence newstring);str.replace("",""); - 8、分割字符串:split(String regex); str.split("");
注意:split方法的参数是一个正则表达式
网友评论