首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Java后端

    Java进阶-IO(3

    Sytem 类封装了 Java 程序运行时的 3 个系统流。 System.in:标准输入流,默认设备是键盘。 System.out:标准输出流,默认设备是控制台。 ; // 导包 import java.io.FileOutputStream; import java.io.OutputStream; import java.nio.charset.StandardCharsets hello javase javaee 集合到文件改进版(自主练习) 步骤: 1)创建一个Student学生类(完整javabean) 2)创建ArrayList集合,泛型约束为Student类型 3) 遍历集合(增强for循环),得到每一个学生对象 6)把学生对象的数据拼接成指定的字符串(使用StringBuilder,并调用其append()方法实现拼接) 7)调用字符缓冲输出流对象的方法写数据(3步 要求:文件中每一行数据是一个集合元素(readLine方法) import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException

    40321编辑于 2024-03-04
  • 来自专栏Java后端

    Java进阶-集合(3)与泛型

    3、案例 3.1 Iterator遍历集合 import java.util.Collection; //导包 import java.util.HashSet; import java.util.Iterator 3.3 示例 import java.util.Collection; import java.util.HashSet; import java.util.Iterator; public class at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1510) at java.base/java.util.HashMap $KeyIterator.next(HashMap.java:1533) at test3.IteratorTest.main(IteratorTest.java:15) 4、Iterator错误检查机制 ; //导包 import java.util.HashMap; import java.util.List; import java.util.Map; public class BookTest

    72621编辑于 2024-03-01
  • 来自专栏java工会

    初级 Java3进阶

    2.Effective Java中文版 看完这本书,也许你还会有另外收获,就是把一些使用IDE时的习惯找到了他们的依据。 很多规则,读这书之前并不知道的,但可能你一直就是这么做了,也许你会惊讶。 3.Java并发编程实战 这本书的前半部分我读的非常仔细,但后半部分则跳跃了很多,并没有完整的阅读。当然原因肯定不是这本书不够好,而是我本人的内力实在是太差了,越看越羞愧。

    1.5K50发布于 2018-06-15
  • 来自专栏C语言讲解

    指针进阶3

    计算的是整个数组的大小,单位是字节 &数组名,这里的数组名表示整个数组,取出的是整个数组的地址 接下来是一些笔试题: #include <stdio.h> int main() { int a[] = { 1,2,3,4 [4] = { 0 }; printf("%d\n", sizeof(a));//3*4*4 = 48 printf("%d\n", sizeof(a[0][0]));//4 printf("% *a --> *(a+0) --> a[0] printf("%d\n", sizeof(a[3]));//16 a[3] --> int[4] return 0; } 对于以上代码中最后一行代码 [2] = { (0, 1), (2, 3), (4, 5) };//这个二维数组里是逗号表达式,如果想把0,1放在第一行,要用{ },所以二维数组中存的是1,3,5,0,0,0 int* p; p ;//ER printf("%s\n", *cpp[-2] + 3);//ST *cpp[-2]+3 --> **(cpp-2)+3 printf("%s\n", cpp[-1][-1] + 1

    19810编辑于 2024-01-22
  • 来自专栏我的计算机成长

    指针进阶3

    int a[] = {1,2,3,4}; printf("%d\n",sizeof(a+0)); a并非单独放在sizeof内部,也没有&,所以数组名a是数组首元素的地址,a+0还是首元素的地址。 int a[] = {1,2,3,4}; printf("%d\n",sizeof(*a)); a并非单独放在sizeof内部,也没有&,所以数组名a是数组首元素的地址. int a[] = {1,2,3,4}; printf("%d\n",sizeof(a+1)); a并非单独放在sizeof内部,也没有&,所以数组名a是数组首元素的地址,a+1就是第二个元素的地址。 {1,2,3,4}; printf("%d\n", sizeof(&a)); &a - 是取出数组的地址,但是数组的地址也是地址,是地址就是4/8个Byte。 int a[] = { 1,2,3,4 }; printf("%d\n", sizeof(&a[0])); &a[0]是首元素的地址, 计算的是地址的大小 4/8 个字节。

    24110编辑于 2024-01-23
  • 来自专栏Java学习录

    Java进阶路线

    Java基础 Java入门时我们都是学了什么? Java集合 ArrayList源码解析 Vector源码解析 CopyOnWriteArrayList源码解析 LinkedList源码解析 HashMap源码解析 ConcurrentHashMap 源码解析 LinkedHashMap源码解析 TreeSet源码解析 HashSet源码解析 LinkedHashSet源码解析 Java 多线程 线程的状态 线程的使用 Synchronized 线程通信 ThreadLocal Lock Java并发级别 Java内存模型 线程协作 Jdk并发包 锁优化 synchronized 关键字原理 多线程的三大核心 对锁的一些认知 ReentrantLock 新版本特性 QQ、新浪微博、码云和百度的第三方登录 如何将自己的jar包发布到mavan中央仓库 使用Java类加载SpringBoot、SpringCloud配置文件 Java8 Optional Lambda

    90300发布于 2019-04-18
  • 来自专栏我的技术

    java进阶3:GC 的背景与一般原理

    Java中的GC背景还包括以下几个方面: 1.动态内存分配:Java中的对象都是在堆(Heap)上分配内存的,而非栈(Stack)上。 为了提高垃圾回收的效率,Java将内存分为不同的代(Generation),并采用不同的回收策略来处理。 3.垃圾回收算法:Java的垃圾回收机制采用的是可达性分析算法。 这也给Java程序员的开发带来许多不确定性。本文研究了几个与GC工作相关的问题,努力减少这种不确定性给Java程序带来的负面影响。 3、哪怕是G1也不能完全避免stop-the-world情况发生,只能说垃圾回收器越来越优秀,回收效率越来越高,尽可能地缩短了暂停时间。 4、STW是JVM在后台自动发起和自动完成的。 2.活动线程 (Active threads) 3.所有类的静态字段 (static field) 4.JNI 引用 此阶段暂停的时间,与堆内存大小,对象的总数没有直接关系,而是由存活对象 (aliveobiects

    49622编辑于 2023-07-05
  • 来自专栏python3

    zabbix-进阶-3

    也可以定义item,application,trigger,graph等 discovery: 发现的方式: agent agentless,ssh,ping//无代理方式 SNMP, JMX:专用于监控java 安装,重启 //假如只监控tomcat的连接数,正在打开的网页数,就不在需要JMX ,脚本即可 zabbix的网络发现功能可基于如下信息进行 IP range 根据服务(FTP,SSH,WEB,POP3, $2}' 这个记录,建议在server上使用agent-get命令测试效果 //zabbix_get -s 10.0.0.101-k "agent.ping" //是一个key,对方的一个key 创建3个 :  51200 //51M小于51M为阈值,默认单位为k OK event generation:None //不会附带产生其他的问题 创建 graph Name:mem-usage-depaly 3. #但被模式下,此参数被忽略 3.#说明:system.hostname是ZABBIX内置的一个自动获取主机名的方法,为了方便配置,建议打开此参数而关闭Hostname参数#。 4. 

    1.1K10发布于 2020-01-06
  • 来自专栏Java后端

    Java进阶-注解

    Java 8 为止 Java SE 提供了 11 个内置注解( 5 个是基本注解,来自于 java.lang 包。 3)默认情况下,注解可以在程序的任何地方使用,通常用于修饰类、接口、方法和变量等。 现在的框架基本都使用了这种配置来减少配置文件的数量; 3.在编译时进行格式检查。如把 @Override 注解放在方法前,如果这个方法并不是重写了父类方法,则编译时就能检查出。 :10 java.lang.Integer:20 java.lang.Integer:30 java.lang.String:10 java.lang.Integer:20 java.lang.Integer 有 3 个枚举常量。

    42521编辑于 2024-03-08
  • 来自专栏Java后端

    Java进阶-反射

    3)判断任意一个类所具有的成员变量和方法。 4)调用任意一个对象的方法。 5)生成动态代理。 3.2 优缺点 1)优点 能够运行时动态获取类的实例,大大提高系统的灵活性和扩展性。 2)获取Class实例 (3种方法) 类名.class:通过类名的属性class获取。 读取文件,加载类) 3)Class实例的唯一性 Class实例在JVM中是唯一的,可以用==比较两个Class实例。 true clz1类名称:java.lang.String clz2类名称:java.lang.String clz2是否为接口:false clz2是否为数组对象:false clz2父类名称:java.lang.Object clz2是否为基本类型:false clz3是否为基本类型:true clz4是否为基本类型:false 注:关于基本类型的判断,String为引用类型,int为基本类型。

    45331编辑于 2024-03-01
  • 来自专栏微信公众号:Java团长

    Java异常进阶

    在使用Java编写应用的时候,我们常常需要通过第三方类库来帮助我们完成所需要的功能。有时候这些类库所提供的很多API都通过throws声明了它们所可能抛出的异常。 在本文中,我们将对如何在Java应用中使用及处理Checked Exception进行简单地介绍。 Java异常简介 在详细介绍Checked Exception所导致的问题之前,我们先用一小段篇幅简单介绍一下Java中的异常。 在Java中,异常主要分为三种:Exception,RuntimeException以及Error。这三类异常都是Throwable的子类。 天使变恶魔 既然Java中的Checked Exception能够提高用户代码质量,为什么还有那么多人反对它呢?原因很简单:它太容易被误用了。

    90940发布于 2018-08-06
  • JAVA集合进阶

    String[]args){//创建集合对象Collection<String>c=newArrayList<>();//添加元素c.add("hello");c.add("world");c.add("java d");list.add("e");list.add("f");//1,数据类型一定是集合或者数组中元素的类型//2,str仅仅是一个变量名而已,在循环的过程中,依次表示集合或者数组中的每一个元素//3, 将指定的元素追加到此列表的末尾//method2(list);//publicEgetFirst()返回此列表中的第一个元素//publicEgetLast()返回此列表中的最后一个元素//method3( =newTreeSet<>();//创建学生对象Students1=newStudent("zhangsan",28);Students2=newStudent("lisi",27);Students3= newTeacher("wangwu",24);Teachert4=newTeacher("zhaoliu",24);//把老师添加到集合ts.add(t1);ts.add(t2);ts.add(t3)

    42220编辑于 2025-11-02
  • 来自专栏CSDNToQQCode

    Java数组全套深入探究——进阶知识阶段3、sort自然排序

    Java数组全套深入探究——进阶知识阶段3、sort自然排序 目录 数组学习的重要意义 sort自然排序 示例——系统自带自然排序 示例——自定义自然排序(可以自己看看,这里涉及到的内容超出当前范围) ] 比较 "file20.txt" 和 "file3.txt",不交换位置。 第2轮: 排除已排序好的最后一个元素 "file3.txt",继续比较前面的元素。 示例——系统自带自然排序 以下是使用Java语言对数组[64, 34, 25, 12, 22, 11, 90]进行自然排序的示例代码,并附带了注释: import java.util.Arrays; ; import java.util.Comparator; public class Demo1 { public static void main(String[] args) {

    46510编辑于 2023-12-11
  • 来自专栏后端Coder

    java进阶|java队列源码分析

    今天我要分享的是java里面比较常见的数据结构队列的源码分析,队列,先进先出模式,即FIFO的特点,日常生活中队列的特点也随处可见,超市购物排队,餐厅排队买饭等一系列都满足了队列的先进先出的特点,java ,写到了内存空间的分配的字样,想到了自己学习c语言的模样,那个拿着大部书《C语言程序设计》前往机房的少年,由于兴趣使然,逐渐走上了javaWeb的开发了,不过这里说明一点,学习c语言对于你理解高级语言java 何况java作为一门高级语言呢,顺势而为成就了这个语言令人喜欢的特点吧。 四,队列既然有入队,想必就会想到队列出队的方法,即poll方法,接下来我们继续看下队列出队的方法时间吧。

    95920发布于 2020-05-26
  • 来自专栏python3

    Powershell进阶学习(3) Po

    3)只管理一台主机太不爽了吧,我想查看多台服务器的日志怎么办?同样可以! ? (4)上面的功能用的如何是不是挺强大的?但是我发现问题了。 ?

    63720发布于 2020-01-07
  • 来自专栏生信技能树生信入门马拉松

    Linux进阶-Day3

    注意Windows系统文件格式与Linux系统不一样,将Windows的文件上传后需要转换格式,才能使用Linux命令操作

    59410编辑于 2024-06-12
  • 来自专栏python3

    python装饰器3进阶

    装饰器1:函数装饰器 装饰器2:类装饰器 装饰器3进阶 函数装饰器装饰方法 函数装饰器装饰普通函数已经很容易理解了: @decorator def func():... 4)) 输出结果: (3, 4) 7 ------------------------------ (<__main__.cls object at 0x01DF1C50>, 3, 4) 7 让类称为装饰器 也就是说,self.func指向的不是对象方法,而是类方法,类方法不会自动传递实例对象 args中保存的参数列表是(3, 4),但是cls.method中多了一个self位置参数,使得3赋值给了self : (3, 4) 7 因此参数问题必须解决。 4)) print('-' * 30) # 带参装饰方法 class cls1: @Decorator(arg1=1, arg2=3, arg3=5) def method(self

    56720发布于 2020-01-19
  • 来自专栏python3

    python3--函数进阶

    *args 动态参数,万能参数 args接收的就是实参对应的所有位置参数,并将其放在元组中,它不会接收关键字参数 例子 def func(*args):     pass func(1,2,3,4,5,6,7,8,9 ) 执行没有报错 def func1(*args):     print(args) func1(1,2,3,4,5,6,7,8,9) 执行结果是一个元组 (1, 2, 3, 4, 5, 6, 7, 8 ,v=3,m=7,h=9,e='女') 执行结果 ? ):             print("in f3")         print("in f2")         f3()     print("in f1")     f2() f1() 执行结果 ,调用f1,先打印'in f1'在调用f2,打印'in f2'在调用f3,打印'in f3' in f1 in f2 in f3 作用域 作用域就是作用范围,按照生效范围可以分为全局作用域和局部作用域

    64310发布于 2018-08-02
  • 来自专栏跟我一起学编程

    指针进阶3)(超详细)

    今天我们更新了指针进阶3)内容, 欢迎大家关注点赞收藏⭐️留言 一、数组指针变量 1.1数组指针变量是什么? 之前我们学习的指针数组,数组中存放的是一种数组,数组中存放的是地址(指针)。 1.3二维数组的传参 按我们之前所学的,二维数组的传参一般都是按下面这种形式去传参: #include<stdio.h> void print(int arr[3][5],int row,int col j = 0; j < col; j++) { printf("%d ", arr[i][j]); } printf("\n"); } } int main() { int arr[3] [5] = { {1,2,3,4,5},{2,3,4,5,6} ,{3,4,5,6,7} }; print(arr, 3, 5); return 0; } 这样便实现了数组的传参。 [5] = { {1,2,3,4,5},{2,3,4,5,6} ,{3,4,5,6,7} }; print(arr, 3, 5); return 0; } 这样也可以得到上面那种效果。

    17410编辑于 2024-03-21
  • 来自专栏Java后端

    Java进阶-集合(2)

    话接上回,继续Java集合框架的学习,这次主要介绍Map接口。 3、几点注意 Map 集合里保存着两组值,一组值用于保存 Map 里的 key,另外一组值用于保存 Map 里的 value,key 和 value 都可以是任何引用类型的数据。 import java.util.HashMap; //导包 import java.util.Iterator; import java.util.Scanner; public class MapDemo Iterator迭代器 import java.util.HashMap; //导包 import java.util.Iterator; import java.util.Map; public class /API帮助文档 添加元素:put()、putAll()… 访问元素:get(key)… 删除元素:remove(key) 清除所有:clear()、计算大小:size()、迭代:for-each… 3

    52921编辑于 2024-02-28
领券