
Java基础
文章平均质量分 52
Code bear
用以自学的博客,如有错误请轻喷...
展开
-
3.3 集合-Map接口
集合- Map接口 Map接口实现类的特点Map接口用于保存具有映射关系的数据:Key-ValueMap 中的Key 和 Value 可以是任何引用类型的数据,会封装到HashMap$Nde对象中Map中的Key不允许重复,但Value 可以重复。都可为null常用的String类作为Map的keyMap.put("k1","A");Map.put("k2","B");Map.Put("k2","c");// 先创立的key遇到后面有相同的key,则会被替代(相当于V原创 2021-11-11 19:03:11 · 137 阅读 · 0 评论 -
3.2.6 Set接口及其实现类
Set接口及其 实现类基本无序(添加和取出的顺序不一样),没有索引不允许有重复的元素常用方法和Collection的子接口相同遍历的方式和Collection 相同可以使用iterator和增强for 但是不能使用索引的方式来获取补充第一点:取出的顺序不是添加的顺序,但是取出后 顺序固定 Set接口实现类-HashSet(1)HashSet基础说明:HashSet实现了Set接口HashSet实际上是基于HashMap实现的public HashS原创 2021-11-11 19:01:49 · 387 阅读 · 0 评论 -
3.2.5 Link子接口-LinkedList
Link-子接口LinkedListLinkedList基本:底层实现了双向链表和双端队列特点可以添加任意元素(元素可重复),包括null线程不安全,没有实现同步 比较 ArrayList和LinkedList :截取此文章一段 传送门 转载的文章基于jdk1.7LinkedList类是List接口的实现类,它是一个集合,可以根据索引来随机的访问集合中的元素,还实现了Deque接口,它还是一个队列,可以被当成双端队列来使用。虽然LinkedList是一个List集合,但是它原创 2021-11-11 18:59:35 · 773 阅读 · 0 评论 -
3.2.3 ArrayList 底层结构
ArrayList 底层结构和源码分析ArrayList基本和注意事项ArrayList可以加入null,并且多个ArrayList 是由数组来实现数据存储的ArrayList 基本等同于Vector,但ArrayList是线程不安全(执行效率高),在多线程情况下,不建议使用ArrayListArrayList 扩容机制结论:ArrayList中维护了一个Object类型的数组elementData transient Object[] elementData当创建Arra原创 2021-11-11 18:57:18 · 409 阅读 · 0 评论 -
3.2.4 Vector
Vector 底层源码及剖析基础认知和注意事项:Vector 为List接口的实现子类底层也是一个对象数组,protected Object[] elementData是线程同步的,即线程安全的。Vector类的操作方法带有Synchronized(支持线程同步和互斥)Vector 和 ArrayList 比较: Vector 底层源码分析原创 2021-11-11 18:55:42 · 79 阅读 · 0 评论 -
3.2.1 List接口
Collection—子接口-List接口List基本概述:List接口是Collention接口的子接口List集合类中元素有序(添加顺序和取出的顺序一致),且可重复每个元素都有对应的顺序索引,即支持索引List接口常用方法:void add(int index, Object ele): 在index位置插入ele元素boolean addAll(int index, Collection eles): 从index位置开始将eles中的所有元素添加进来Object g原创 2021-11-11 18:54:17 · 694 阅读 · 0 评论 -
3.2 集合-Collection接口
Collection接口1.Collection接口常用方法和特点:collection接口的特点:实现子类可存放多个元素,每个元素是objectCollection实现类,可以存放重复的元素,有些不可以Collection实现类,List是有序的,Set是无序的没有直接的实现子类,是通过它的子接口Set和List 来实现的常用方法:1、add()方法boolean add(E e) //向集合中插入一个元素Collection c = new Ar原创 2021-11-11 18:51:18 · 443 阅读 · 0 评论 -
3.1 集合基础
集合集合的构成: 集合和数组的比较:数组:数组的长度在一开始时必须指定,并且一旦指定后不可更改数组保存的必须为同一类型的元素使用数组进行增删元素-麻烦集合:可以动态的保存任意多个对象提供了一系列方便操作对象的方法 :如 add,set,remove,get使用集合添加删除新元素代码更加简洁集合体系:集合主要是两组 (单列集合,双列集合)collection接口有两个重要的子接口 List 和 Set,他们实现的子类都是单列集合Map 接口实现的子类,是双原创 2021-11-11 18:49:49 · 71 阅读 · 0 评论 -
2.7 String练习- 邮箱验证
String练习-邮箱验证/** * 输入用户名,密码,邮箱; 如果录入正确 提示录入成功 否则生成异常对象 * 要求;1.用户名的长度或2或3或4 * 2.密码长度为6,要求全是数字 * 3.邮箱中包含@和. 并且 @在.的前面 */public class emailPass { public static void main(String[] args) { String name = "chen"; String pwd = "123456";原创 2021-11-11 18:48:21 · 323 阅读 · 0 评论 -
2.6 String练习-字符反转
String反转/** * 将字符串的任意区间的字符反转 * 例:字符串“abcdef” 反转为 “aedcbf" */public class reserveChar { public static void main(String[] args) { String str = "abcdef";// 捕获异常 try { str = reverse(str,4,1); } catch (Exception原创 2021-11-11 18:46:54 · 107 阅读 · 0 评论 -
2.5常用类-Math类 Arrays类
Math类 Arrays类Math类:包含用于执行基本数学运算的方法常用方法// .abs() 求绝对值 System.out.println(Math.abs(-10)); System.out.println(Math.abs(-11.2));// .pow() 求幂 System.out.println(Math.pow(2,3));// .ceil() 向上求整 ceil:天花板 求一个数向上的最大整数 S原创 2021-10-27 10:29:35 · 122 阅读 · 0 评论 -
2.4 常用类-StringBuilder类
StringBuilder基础知识不是线程安全的(多线程)是StringBuffer的简易替换,在单线程中使用用在字符串缓冲区被单个线程使用的时候StringBuilder 主要在append()和insert(),可重载这些方法,以接受任何类型的数据StringBuilder总结StringBuilder 继承 AbstractStringBuilder 类实现了 Serializable 说明String Builder 对象是可以串行化(对象可以网络传输,可以原创 2021-10-11 10:11:15 · 112 阅读 · 0 评论 -
2.3常用类-String Buffer类
String Buffer基本:可变的字符序列,可以对字符串内容进行增删很多方法与String 相同,但String Buffer是可变长度的String Buffer 是一个容器类图结构:String 与 String Buffer 对比:String 保存的是字符串常量,里面的值不能更改,每次String类的更新实际上就是更改地址,效率低 // private final char value[];StringBuffer 保存的是字符串变量原创 2021-10-10 16:01:08 · 152 阅读 · 0 评论 -
2.2常用类- String类
常用类-String类基本知识点 :String 对象用于保存字符串,也就是一组字符序列字符串常量对象是用双引号括起来的字符序列字符串使用的是Unicode字符编码,一个字符占两个字节常用构造器String s1 = new String();String s2 = new String(String original);String s3 = new String(char[] a);String s4 = new String(char[] a,int Sta原创 2021-10-09 08:36:35 · 106 阅读 · 0 评论 -
2.1 常用类-包装类
常用类-包装类包装类和基本的数据类型转换jdk5 前的手动装箱和拆箱方式,装箱:基本类型->包装类型 反之为拆箱jdk5 以后的自动装箱和拆箱方式自动装箱底层调用的是 valueOf方法 比如:Integer.valueOf()引用博客文:包装类的详解包装类转化为String类 高频// 包装类转换成String Integer demo = 100; String demo2 = demo + ""; St原创 2021-10-08 21:38:21 · 77 阅读 · 0 评论 -
方法的定义和调用简单使用
方法的定义和调用简单使用简单的一个程序/** * 比大小 */public class demo03 { public static void main(String[] args) { System.out.println(add(1,2)); } public static int add(int a,int b){ int result = 0; if(a>b){ result =原创 2021-10-06 09:27:30 · 73 阅读 · 0 评论 -
Scanner方法
Scanner方法和用户交互的方法// 创建一个扫描器对象,用于接收键盘数据Scanner sc = new Scanner(System.in);// 判断用户有没有输入字符串 if(sc.hasNextIn()){ int a = sc.nextInt(); System.out.print(a); }// 属于i/o流 使用完要关闭 sc.close();next() 不能得到带有空格的字符串next Line原创 2021-10-05 19:55:48 · 93 阅读 · 0 评论 -
2.5 Math类和Arrays类
Math类 Arrays类Math类:包含用于执行基本数学运算的方法常用方法// .abs() 求绝对值 System.out.println(Math.abs(-10)); System.out.println(Math.abs(-11.2));// .pow() 求幂 System.out.println(Math.pow(2,3));// .ceil() 向上求整 ceil:天花板 求一个数向上的最大整数 S原创 2021-10-04 10:49:16 · 116 阅读 · 0 评论