当前位置: 首页 > news >正文

Java学习

目录

treeSet

StringBuilder


treeSet


        TreeSet 是 Java 中实现了 Set 接口的一种集合类,它使用红黑树数据结构来存储元素,放到TreeSet集合中的元素: 无序不可重复,但是可以按照元素的大小顺序自动排序。

        TreeSet一般会和Iterator迭代器一起使用,什么是Iterator(迭代器),它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合(或者也可以说成,遍历并选择序列中的对象)。

 		// 1    集合的创建TreeSet<Integer> ts = new TreeSet<>();// 2    添加元素ts.add(1);ts.add(100);ts.add(10);ts.add(0);ts.add(15);//3    迭代器遍历Iterator<Integer> it = ts.iterator();while(it.hasNext()){Integer next = it.next();System.out.println(next);}//增强for循环遍历for (Integer i:ts) {System.out.println(i);}//获取第一个和最后一个元素System.out.println(it.first());System.out.println(it.last());//获取元素个数int size = it.size();//判断是否包含某个元素boolean contains = treeSet.contains("Orange");

运行结果:

0
1
10
15
100

模拟题:

代码实现:

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别int num=in.nextInt();TreeSet<Integer> set = new TreeSet<>();for(int i=0;i<num;i++){set.add(in.nextInt());}Iterator<Integer> iterator=set.iterator();while(iterator.hasNext()){System.out.println(iterator.next());}}
}

StringBuilder

        是 Java 中用来进行字符串操作的一个类,它允许对字符串进行动态修改,而不会像 String 类那样创建新的对象。这样可以提高字符串操作的效率。

下面是关于 StringBuilder 的详细用法解释:

//创建 StringBuilder 实例StringBuilder sb = new StringBuilder();//添加字符串
sb.append("Hello");
sb.append(" ");
sb.append("World");//将其他数据类型添加到 StringBuilder
sb.append(123); // 添加整数
sb.append(true); // 添加布尔值
sb.append(3.14); // 添加浮点数//插入字符串
sb.insert(5, "Java"); // 在索引 5 处插入字符串 "Java"//删除字符串
sb.delete(5, 9); // 删除从索引 5 到索引 8 的子串//替换字符串
sb.replace(0, 5, "Hi"); // 用字符串 "Hi" 替换索引 0 到索引 4 的子串//反转字符串
sb.reverse(); // 反转字符串//获取字符串长度
int length = sb.length();//获取指定位置的字符
char ch = sb.charAt(0);//转换为 String
String result = sb.toString();

模拟题:

代码实现:

import java.util.*;
public class Main{public static void main(String[] args){Scanner sc = new Scanner(System.in);while(sc.hasNext()){String str = sc.nextLine();StringBuilder sb = new StringBuilder();//牢记字符串缓冲区的建立语法sb.append(str);//字符串缓冲区的加入int size = str.length();int addZero = 8 - size%8;//addzero的可能值包括8while((addZero > 0)&&(addZero<8)){//注意边界调节,避免addzero=8sb.append("0");//使用‘’或“”都可addZero--;}String str1 = sb.toString();while(str1.length()>0){System.out.println(str1.substring(0,8));str1 = str1.substring(8);}}}
}

http://www.lryc.cn/news/319929.html

相关文章:

  • C#八皇后算法:回溯法 vs 列优先法 vs 行优先法 vs 对角线优先法
  • springboot整合swagger,postman,接口规范
  • 029—pandas 遍历行非向量化修改数据
  • 相机安装位置固定后开始调试设备供电公司推荐使用方法
  • AI视频批量混剪系统|罐头鱼AI视频矩阵获客
  • 线程池学习-了解,自定义线程池
  • CentOS7.9 安装SIPp3.6
  • Java零基础入门-LinkedHashMap集合
  • LRC转SRT
  • mybatis源码阅读系列(二)
  • 【Web开发】CSS教学(超详细,满满的干货)
  • 系列学习前端之第 5 章:学习 ES6 ~ ES11
  • Linux学习(4)——使用编辑器
  • 简单函数_短信计费
  • centos命令history设置记录10000行
  • SpringBoot打造企业级进销存储系统 第七讲
  • 1.实用Qt:解决绘制圆角边框时,圆角锯齿问题
  • JavaWeb08-Filter和Listener
  • 关于ClickHouse的一些小技巧
  • 有来团队后台项目-解析7
  • 用户数据的FLASH存储与应用(FPGA架构)
  • Chrome的V8引擎 和操作系统交互介绍
  • Redis:持久化、线程模型、大 key
  • Linux 16个常用脚本(初级)练习
  • 接口测试及接口测试工具【Postman】相关的面试题
  • android 怎么自定义view
  • JavaScript的事件
  • android 简单快速 自定义dialog(简单好用,不需要设置样式)
  • JAVA代理模式梳理
  • 推荐几个线上兼职,每天两小时收入几十到一百