第二十单元 集合②
测试题
1、判断键盘录入的字符串是否对称,并在控制台打印输出结果。【考核知识点:StringBuilder类的方法】
/**
* Create by yanhongbo
* 日期 2021/4/25
*1、(必做录屏)判断键盘录入的字符串是否对称,并在控制台打印输出结果。【考核知识点:StringBuilder类的方法】
* 例如 "abccba"
* @Version 1.0
*/
public class Test03 {
public static void main(String[] args) {
//第一步键盘录入
System.out.println("请输入字符串 例如abccba");
String str = new Scanner(System.in).nextLine();
//第二步:创建Stringbuilder对象
StringBuilder sb=new StringBuilder(str);
//第三步:字符串反转
StringBuilder str2 = sb.reverse();
//把可变的字符串变成不可变的 调用toString();
String str3 = str2.toString();
/* if(str.equals(str3)){
System.out.println("字符串对称");
}else{
System.out.println("字符串不对称");
}*/
String s=(str.equals(str3))?"对称":"不对称";//利用三元运算符
System.out.println(s);
}
}
2、 计算小票信息上的总价。【考核知识点:字符串的解析和引用类型转换】
小票信息已给出 :
String message= "大拉皮-21.90;鱼香肉丝-22.80;巫山烤鱼-58.80”;
public class Test04 {
public static void main(String[] args) {
String message= "大拉皮-21.90;鱼香肉丝-22.80;巫山烤鱼-58.80";
//第一步:把字符串中的数字提取出来 split();
String[] arr = message.split("[-;]");
//遍历字符串数字
/* for (String s : arr) {
System.out.println(s);
}*/
double sum=0;
for(int i=1;i<arr.length;i+=2){
//第二步:把字符串转换为double类型 parseDouble(String s)
sum+=Double.parseDouble(arr[i]);
}
System.out.println(sum);//103.5
}
}
今日重点学习目标
- 迭代器–Iterator–对集合进行遍历
- 增强For–变量名.iter
- 泛型
- 斗地主-案例
迭代器-Iterator
1.1 概述
对 collection 进行迭代的迭代器,也就是Collection下面的所有实现类都可以使用Iterator进行遍历。
1.2 方法
public boolean hasNext(); 如果仍有元素可以迭代,则返回 true
。 判断集合中是否有元素,如果有继续遍历。
public E next():返回迭代的下一个元素。 获取集合中元素
public void remove():从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。 基本上很少用
1.3 代码演示
import java.util.ArrayList;
import