【java】关于TreeMap迭代器的一个问题。

图片说明
图片说明
这个map集合为什么我用keySet()方法迭代正常输出。用entrySet()方法迭代就只能输出两个?(输出结果如下:)
图片说明

1个回答

compareto判断一致就只输出一个了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
java中遍历TreeMap集合的问题(自然排序Comparato()方法的问题)
遍历Treemap<Student,String>集合时由于要排序所以重写了Compara to()方法(我用的是自然排序)由于我比较懒没有写排序规则(写排序规则时输出正常),让这个方法直接返回了1,奇怪的是Treemap<Student,String>集合的值,也就是String在输出时总是 显示null,这是为什么 我感觉compara to即使重写他返回的不也是int值吗那为什么就是不一样呢 他要是只输出一个数据我还能理解,但TreeMap集合的键都输出了值都是null 这是为什么呢 ```![图片说明](https://img-ask.csdn.net/upload/201908/13/1565710634_787537.png) ![图片说明](https://img-ask.csdn.net/upload/201908/13/1565710683_855026.png) ```
Java treemap集合类,自定义比较器怎样实现逆字典顺序输出的?
代码是: import java.util.*; public class Example21 { // 创建TreeMap测试类 public static void main(String[] args) { TreeMap tm = new TreeMap(new MyComparator());// 传入一个自定义比较器 tm.put("1", "Jack"); // 向集合存入学生的学号和姓名 tm.put("2", "Rose"); tm.put("3", "Lucy"); Set keySet = tm.keySet(); // 获取键的集合 Iterator it = keySet.iterator(); // 获得迭代器对象 while (it.hasNext()) { Object key = it.next(); // 获得一个键 Object value = tm.get(key); // 获得键对应的值 System.out.println(key + ":" + value); } } } class MyComparator implements Comparator { // 自定义比较器 public int compare(Object obj1, Object obj2) {// 实现比较方法 String id1 = (String) obj1; // 将Object类型的参数强转为String类型 String id2 = (String) obj2; return id2.compareTo(id1); // 将比较之后的值返回 } } 输出结果是: 3:Lucy 2: Rose 1:Jack 当我把 return id2.compareTo(id1); 改成 return id1.compareTo(id2); 时 输出结果是这样的:1:Jack 2:Rose 3:Lucy 这是怎样实现的? 能不能把实现过程表示出来? 谢谢了,各位
treemap集合问题 java
为什么我使用treeMap集合加进去的数据是这样的 {1=0, 10=0, 11=0, 12=0, 13=1, 14=0, 15=0, 16=0, 17=0, 18=0, 19=0, 2=0, 20=0, 21=0, 22=0, 23=0, 24=0, 3=0, 4=0, 5=0, 6=0, 7=0, 8=0, 9=0} 没有按照键的自然顺序排列啊,键值都是String类型,莫非必须要写比较器吗? 比较器不记得怎么写了现在 有什么解决办法没有
为什么hashmap.linkmap.treemap不能作为一个map通过设置属性来作为存放的依据
为什么hashmap.linkmap.treemap不能作为一个map通过设置属性来作为存放的依据。比如,声明一个map,在声明一下存放方式(按顺序,按排序,随机),可以这样设计么
java中 往treeMap的构造方法中放 new new Comparator<User>() {}编译出错
public static void maptree1(Map<String, User> map) { Map<String, User> m = new TreeMap<String, User>(new Comparator<User>() { @Override public int compare(User o1, User o2) { return o1.compareTo(o2); } }); 代码是这个 ![图片说明](https://img-ask.csdn.net/upload/201811/07/1541588854_676951.png)
Java对象引用指向的问题
有以下代码: package com.lzw; import java.util.*; public class UpdateStu implements Comparable<Object>{ String name; long id; public UpdateStu(long id, String name) { this.id = id; this.name = name; } public int compareTo(Object o) { UpdateStu upstu = (UpdateStu) o; int result = id > upstu.id ? 1 : (id == upstu.id ? 0 : -1); return result; } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public static void main(String[] args) { UpdateStu stu1 = new UpdateStu(112,"李同学"); UpdateStu stu2 = new UpdateStu(113,"陈同学"); UpdateStu stu3 = new UpdateStu(114,"王同学"); UpdateStu stu4 = new UpdateStu(115,"马同学"); UpdateStu stu5 = new UpdateStu(116,"赵同学"); TreeSet<UpdateStu> tree = new TreeSet<UpdateStu>(); System.out.println("对象tree的地址:"+tree); tree.add(stu1); System.out.println("对象stu1对象的地址:"+stu1); tree.add(stu2); System.out.println("对象stu2对象的地址:"+stu2); tree.add(stu3); System.out.println("对象stu3对象的地址:"+stu3); tree.add(stu4); System.out.println("对象stu4对象的地址:"+stu4); tree.add(stu5); System.out.println("对象stu5对象的地址:"+stu5); Iterator<UpdateStu> it = tree.iterator(); System.out.println("迭代器it(指向)的地址:"+it); System.out.println("tree.iterator()返回的地址:"+tree.iterator()); System.out.println("Set集合中的所有元素:"); int i=0; while (it.hasNext()) { String []dd={"stu1","stu2","stu3","stu4","stu5"}; UpdateStu stu = (UpdateStu) it.next(); System.out.println("stu->"+"对象"+dd[i]+"的地址:"+stu); System.out.println(stu.getId() + " " + stu.getName()); i++; } it=tree.headSet(stu3).iterator(); System.out.println("截取前面部分的集合:"); while (it.hasNext()) { UpdateStu stu = (UpdateStu) it.next(); System.out.println(stu.getId() + " " + stu.getName()); } it = tree.subSet(stu2, stu3).iterator(); System.out.println("截取中间部分的集合"); while (it.hasNext()) { UpdateStu stu = (UpdateStu) it.next(); System.out.println(stu.getId() + " " + stu.getName()); } } } 在Java语言里没有指针(地址)的概念,只用引用的概念,但是引用本身就是一个指向new分配的对象地址(希望我没有理解错误),现在问题来了: 1、为什么System.out.println("对象tree的地址:"+tree); 输出的是:[] 2、为什么System.out.println("迭代器it(指向)的地址:"+it);输出的是:”java.util.TreeMap$KeyIterator@5c647e05“与System.out.println("tree.iterator()返回的地址:"+tree.iterator());输出的:”java.util.TreeMap$KeyIterator@33909752“地址不一样?
TreeSet跟TreeMap条件限制
# 面试题如下 ``` 56、TreeMap和TreeSet在排序时如何比较元素?Collections工具类中的sort()方法如何比较元素? 答:TreeSet要求存放的对象所属的类必须实现Comparable接口,该接口提供了比较元素的compareTo()方法,当插入元素时会回调该方法比较元素的大小。TreeMap要求存放的键值对映射的键必须实现Comparable接口从而根据键对元素进行排序。 ``` ## 从上可得出放入TreeSet跟TreeMap的对象一定要实现Comparable? ## 有如下2个问题 1. 本人写了一段测试代码,发现如果对象不实现该接口一样可以放进去 2.如果不实现该接口放进去的话,对象有序吗。 **代码如下** ``` import java.util.*; public class Leetcode { public static void main(String[] agrs){ Map<Integer,Student> map = new TreeMap<>(); Student student = new Student(); map.put(1,student); Set<Student> set = new TreeSet<>(); set.add(student); } } public class Student { private String name; private int age; private int score; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } } ```
springBoot集成ckfinder3,按照官网案例,集成到项目就出现无法加载CKFinder配置,请大佬们解答下,感谢!
## springBoot集成ckfinder3,按照官网案例,集成到项目出现无法加载CKFinder配置,请大佬们解答下,感谢! ![图片说明](https://img-ask.csdn.net/upload/201911/28/1574950542_300362.png)![图片说明](https://img-ask.csdn.net/upload/201911/28/1574950556_903098.png) ![图片说明](https://img-ask.csdn.net/upload/201911/28/1574950569_168466.png) [restartedMain] ERROR c.c.c.c.ConfigFactory$$EnhancerBySpringCGLIB$$85ae45bc - [<init>,73] - Could not load CKFinder configuration com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "enabled" (class com.cksource.ckfinder.config.Config), not marked as ignorable (15 known properties: "cache", "thumbnails", "serveStaticResources", "privateDir", "resourceTypes", "licenseName", "secureImageUploads", "checkSizeAfterScaling", "extraHeaders", "images", "accessControl", "roleSessionAttribute", "csrfProtection", "licenseKey", "backends"]) at [Source: (BufferedInputStream); line: 3, column: 14] (through reference chain: com.cksource.ckfinder.config.Config["enabled"]) at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:60) at com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:823) at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:1153) at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1589) at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1567) at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:294) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151) at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4013) at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3070) at com.cksource.ckfinder.config.loader.YamlConfigLoader.loadConfig(YamlConfigLoader.java:32) at com.cksource.ckfinder.config.ConfigFactory.<init>(ConfigFactory.java:64) at com.cksource.ckfinder.config.ConfigFactory$$EnhancerBySpringCGLIB$$85ae45bc.<init>(<generated>) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:172) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:117) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:300) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:285) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1308) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1154) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:538) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:392) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1288) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1127) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:538) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:273) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1237) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1164) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:593) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:90) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:374) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1378) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:846) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:863) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) at com.cksource.ckfinder.servlet.CKFinderServlet.init(CKFinderServlet.java:180) at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1124) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:974) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.load(TomcatEmbeddedContext.java:83) at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270) at java.util.TreeMap$ValueSpliterator.forEachRemaining(TreeMap.java:2897) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.lambda$deferredLoadOnStartup$0(TomcatEmbeddedContext.java:65) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.doWithThreadContextClassLoader(TomcatEmbeddedContext.java:108) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.deferredLoadOnStartup(TomcatEmbeddedContext.java:64) at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.performDeferredLoadOnStartup(TomcatWebServer.java:282) at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:200) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:311) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:164) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:142) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) at org.springframework.boot.SpringApplication.run(SpringApplication.java:316) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1260) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1248) at com.zhglxt.ZhglxtApplication.main(ZhglxtApplication.java:33) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) 21:56:27.856 [restartedMain] WARN o.s.w.c.s.AnnotationConfigWebApplicationContext - [refresh,554] - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'CKFinder': Unsatisfied dependency expressed through field 'baseConfig'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.cksource.ckfinder.config.Config' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=baseConfig)} 21:56:27.859 [restartedMain] ERROR o.a.c.c.C.[.[.[/zhglxt] - [log,175] - StandardWrapper.Throwable org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'CKFinder': Unsatisfied dependency expressed through field 'baseConfig'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.cksource.ckfinder.config.Config' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=baseConfig)} at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:596) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:90) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:374) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1378) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:846) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:863) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) at com.cksource.ckfinder.servlet.CKFinderServlet.init(CKFinderServlet.java:180) at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1124) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:974) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.load(TomcatEmbeddedContext.java:83) at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270) at java.util.TreeMap$ValueSpliterator.forEachRemaining(TreeMap.java:2897) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.lambda$deferredLoadOnStartup$0(TomcatEmbeddedContext.java:65) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.doWithThreadContextClassLoader(TomcatEmbeddedContext.java:108) at org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedContext.deferredLoadOnStartup(TomcatEmbeddedContext.java:64) at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.performDeferredLoadOnStartup(TomcatWebServer.java:282) at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:200) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:311) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:164) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:142) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) at org.springframework.boot.SpringApplication.run(SpringApplication.java:316) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1260) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1248) at com.zhglxt.ZhglxtApplication.main(ZhglxtApplication.java:33) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.cksource.ckfinder.config.Config' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=baseConfig)} at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1644) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1242) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1164) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:593) ... 47 common frames omitted 21:56:27.861 [restartedMain] INFO o.a.c.h.Http11NioProtocol - [log,173] - Pausing ProtocolHandler ["http-nio-8888"] 21:56:27.973 [restartedMain] INFO o.a.c.c.StandardService - [log,173] - Stopping service [Tomcat] 21:56:27.979 [restartedMain] INFO o.a.c.h.Http11NioProtocol - [log,173] - Stopping ProtocolHandler ["http-nio-8888"] 21:56:27.986 [restartedMain] INFO o.a.c.h.Http11NioProtocol - [log,173] - Destroying ProtocolHandler ["http-nio-8888"] 21:56:28.390 [Quartz Scheduler [ZhglxtScheduler]] INFO o.q.c.QuartzScheduler - [start,547] - Scheduler ZhglxtScheduler_$_ZXW-20170610XKD1574949376093 started. 21:56:28.790 [restartedMain] ERROR o.s.b.d.LoggingFailureAnalysisReporter - [report,42] - *************************** APPLICATION FAILED TO START *************************** Description: Field baseConfig in com.cksource.ckfinder.CKFinder required a bean of type 'com.cksource.ckfinder.config.Config' that could not be found. The injection point has the following annotations: - @org.springframework.beans.factory.annotation.Autowired(required=true) - @org.springframework.beans.factory.annotation.Qualifier(value=baseConfig) Action: Consider defining a bean of type 'com.cksource.ckfinder.config.Config' in your configuration.
TreeMap根据键获取值得到的是null?
TreeMap集合键是Student值是String进行排序的时候,compare返回值为规定值是为什么根据键获取值得到的是null?![图片说明](https://img-ask.csdn.net/upload/201905/16/1557989374_991177.png)
hadoop中reducer中使用treemap,新的value会覆盖所有旧的value
在编写topN类型的mapreduer程序时,有一种方法是,使用treemap的排序功能,把要排序的字段保存为key,需要输出的字段保存为value,最后根据是取最大还是取最小来保留treemap的最前方元素还是最后方元素。但是我在编写这个程序时,把treemap的value设置成我自定义的一个类,然后,就发生了,每次put元素时,都会把treemap中所有key的所有value设置成新put进来元素的value值,十分蛋疼。 自定义的类student 继承 Writable类,只用一个Text的name属性,和一个int的age属性。student的代码在最后。 mapreducer的代码如下, map就是输出类型为<LongWritable, student>,key是随机生成的0-9之间的数字,studet的name是从输入的value,age是随机的,这个属性没用。 reducer的输出类型为<LongWritable, Text>,key就是map的key,Text是treemap的toString(),也就是执行一次reducer,treemap的内容。 treemap的key就是reducer传过来的key(即LongWritable的long),value就是传过来的student。按照key的大小,取key最大的三个。因为treemap已经是升序排列好了,所以其实只要去treemap的后三个就行了。 具体问题的说明,在输出文件的下面。 ``` public static class MapImpl extends Mapper<LongWritable, Text, LongWritable, student> { private Random ra = new Random(System.currentTimeMillis()); private LongWritable k = new LongWritable(); @Override protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException { int d = ra.nextInt(10); student s = new student(); s.setName(value); s.setAge(ra.nextInt(100)); k.set(d); context.write(k, s); } } public static class ReducerImpl extends Reducer<LongWritable, student, LongWritable, Text> { private int n = 0; private TreeMap<Long, ArrayList<student>> tmap = new TreeMap<Long, ArrayList<student>>(); private static NullWritable k = NullWritable.get(); @Override protected void setup(Context context) throws IOException, InterruptedException { super.setup(context); n = Integer.valueOf(context.getConfiguration().get("n", "5")); } @Override protected void reduce(LongWritable arg0, Iterable<student> arg1, Context arg2) throws IOException, InterruptedException { Long k = arg0.get(); for (student text : arg1) { ArrayList<student> arrayList = tmap.get(k); if (arrayList == null) { arrayList = new ArrayList<student>(); } arrayList.add(text); tmap.put(k, arrayList); } while (tmap.size() > n) { Long firstKey = tmap.firstKey(); tmap.remove(firstKey); } arg2.write(arg0, new Text(tmap.toString())); } } public static void main(String[] args) { try { Configuration conf = new Configuration(); conf.set("n", "3"); String[] argss = new GenericOptionsParser(conf, args) .getRemainingArgs(); if (argss.length != 2) { System.out.println("parameter error"); System.exit(1); } Job job = Job.getInstance(conf); job.setJarByClass(test02.class); job.setMapperClass(MapImpl.class); job.setReducerClass(ReducerImpl.class); job.setMapOutputKeyClass(LongWritable.class); job.setMapOutputValueClass(student.class); job.setOutputKeyClass(LongWritable.class); job.setOutputValueClass(Text.class); job.setInputFormatClass(TextInputFormat.class); job.setOutputFormatClass(TextOutputFormat.class); Path inpath = new Path(argss[0]); Path outpath = new Path(argss[1]); HadoopUtils.PathCheck(conf, inpath, outpath); FileInputFormat.addInputPath(job, inpath); FileOutputFormat.setOutputPath(job, outpath); System.exit(job.waitForCompletion(true) ? 0 : 1); } catch (Exception e) { e.printStackTrace(); } } ``` 输入文件如下 ``` a b c d e f g h i ``` 输出文件如下 ``` 0 {0=[d 55]} 2 {0=[b 6], 2=[b 6, b 6]} 3 {0=[f 86], 2=[f 86, f 86], 3=[f 86]} 4 {2=[h 37, h 37], 3=[h 37], 4=[h 37]} 5 {3=[a 98], 4=[a 98], 5=[a 98, a 98]} 6 {4=[i 18], 5=[i 18, i 18], 6=[i 18]} 8 {5=[g 55, g 55], 6=[g 55], 8=[g 55]} ``` 这样可以很清楚的看到,本来第一次reducer之后,key为0的键值还是[d 55],但是第二次reducer之后,key为0的键值被[b 6]给覆盖了,而[b 6]就是新进来的key为2的键值。而且,key为2的键值[b 6]竟然有两个。因为输出文件每行的字母都不相同,所以产生的也不应该有重复的呀,很费解。 student 类 继承 Writable类,只用一个Text的name属性,和一个int的age属性。 ``` public class student implements Writable { Text name = new Text(); int age = 0; public Text getName() { return name; } public void setName(Text name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return name + "\t" + age; } @Override public void write(DataOutput out) throws IOException { this.name.write(out); out.writeInt(this.age); } @Override public void readFields(DataInput in) throws IOException { this.name.readFields(in); this.age = in.readInt(); } } ```
我想通过反射取到TreeMap中的root字段然后遍历这颗树
取到root字段后不会转换成Map.Entry类型了 import java.lang.reflect.Field; import java.util.TreeMap; public class Main { public static final Object PRESENT = new Object(); public static void main(String[] args) throws Exception { TreeMap<Integer, Object> tree = new TreeMap<Integer, Object>(); tree.put(1, PRESENT); Class<? extends TreeMap> c = tree.getClass(); Field root = c.getDeclaredField("root"); root.setAccessible(true); System.out.println(root.getType()); } }
TreeMap实现排序,重写compare方法
用TreeMap实现排序,要求实现comparetor接口,重写compare(T o1,T o2)方法
Java初学者求教,麻烦了
package cn.xtgj.dao; import java.util.Iterator; import java.util.Scanner; import java.util.TreeSet; import cn.xtgj.model.Wares; public class Dao { Scanner sc=new Scanner(System.in); String option; TreeSet<Wares> set=new TreeSet<Wares>();//此集合用来装商品的信息 //创建Wares对象 Wares w=new Wares(); //商品添加方法 public void addWares(String name){ boolean bl=false; //验证该商品是否重复 //首先获取迭代器 Iterator<Wares> it=set.iterator(); //如果集合不为空,就进去里面判断 while(it.hasNext()){ Wares wares=it.next(); if(wares.getName().equals(name)){ System.out.println("该商品已经存在,请重新输入!"); bl=true; } } if(bl==false){ System.out.println("是否添加? 是(Y) 否(N)"); System.out.println("商品名称:"+name); option=sc.next(); if("y".equalsIgnoreCase(option)){ w.setName(name); set.add(w); System.out.println(set); } } } } set.add(w);//就这个会报错,我觉得没哪里有问题啊,麻烦大家解释一下,谢谢! 报错的代码如下: 请选择功能: (A)理货员录入 (B)收银员收款 (C)售货统计、盈利结算 a 请输入你选择要输入的商品的信息:(A)名称 (B)进价 (C)单价 (D)数量 a 请输入要添加商品的名称: 毛巾 是否添加? 是(Y) 否(N) 商品名称:毛巾 y Exception in thread "main" java.lang.ClassCastException: cn.xtgj.model.Wares cannot be cast to java.lang.Comparable at java.util.TreeMap.compare(Unknown Source) at java.util.TreeMap.put(Unknown Source) at java.util.TreeSet.add(Unknown Source) at cn.xtgj.dao.Dao.addWares(Dao.java:35) at cn.xtgj.daomain.WaresSystemMain.main(WaresSystemMain.java:26)
【java】jmap -histo pid 输出的[B 占用很高,请问问题会在哪里?
公司目前的程序是解析excel表格内容,使用到了poi sax方式解析,但是在监控的过程中发现堆内存B的占用非常高,使用mat工具也告诉B可能存在内存泄漏问题。 代码中那些操作会导致这个问题呢?代码中只使用了一个inputstream来保存文件,而且使用后也关闭了 是在找不到,但是B占了相当多的空间 b就是byte数据(下面这个不是我的图,是我找的一个例图,就是B那个地方,我这里显示的是占用最高的,我不知道我的程序哪里写错了会导致这种情况) ``` num #instances #bytes class name ---------------------------------------------- 1: 1169837 131659368 [C 2: 25945 38337824 [I 3: 31548 29407968 [B 4: 1164546 27949104 java.lang.String 6: 91313 12829072 <constMethodKlass> 7: 12395 12404880 [S 8: 91313 11700288 <methodKlass> 9: 7525 9303112 <constantPoolKlass> 10: 7525 5606808 <instanceKlassKlass> 11: 6043 5028288 <constantPoolCacheKlass> 12: 10048 2007888 [Ljava.lang.Object; 14: 3507 1707048 <methodDataKlass> 15: 8132 980616 java.lang.Class 16: 26854 859328 java.util.HashMap$Entry 17: 12368 699296 [[I 18: 14135 452320 java.util.concurrent.ConcurrentHashMap$HashEntry 19: 20883 334128 java.lang.Object 20: 590 316240 <objArrayKlassKlass> 21: 1757 305904 [Ljava.util.HashMap$Entry; 22: 2809 224720 net.sf.ehcache.Element 23: 1992 223104 java.net.SocksSocketImpl 24: 2668 213440 java.lang.reflect.Method 26: 5932 183928 [Ljava.lang.String; 27: 7588 182112 java.util.concurrent.ConcurrentSkipListMap$Node 28: 7317 175608 java.lang.Long 29: 5303 169696 java.util.Hashtable$Entry 30: 6778 162672 java.util.ArrayList 31: 3931 157240 java.lang.ref.SoftReference 32: 2972 118880 java.util.LinkedHashMap$Entry 33: 1565 112680 org.apache.commons.pool2.impl.DefaultPooledObject 34: 2817 112680 net.sf.ehcache.store.chm.SelectableConcurrentHashMap$HashEntry 35: 2243 107664 java.util.HashMap 36: 2592 103680 java.util.TreeMap$Entry 37: 3214 102848 java.lang.ref.WeakReference 38: 1565 100160 redis.clients.jedis.Client 39: 4155 99720 java.util.LinkedList$Node 40: 1986 95328 java.net.SocketInputStream 41: 414 92952 [Ljava.util.concurrent.ConcurrentHashMap$HashEntry; 42: 2275 91000 java.lang.ref.Finalizer 43: 1161 83592 java.lang.reflect.Constructor 44: 757 78728 java.io.ObjectStreamClass 45: 1587 76176 java.net.SocketOutputStream 46: 1189 66584 java.beans.MethodDescriptor 47: 2770 66480 org.apache.commons.pool2.impl.LinkedBlockingDeque$Node 48: 388 66368 [Ljava.util.Hashtable$Entry; 49: 1989 63648 java.net.Socket 50: 749 53928 java.lang.reflect.Field ... ... 2947: 1 16 sun.misc.Launcher 2948: 1 16 org.codehaus.jackson.map.ser.std.DateSerializer 2949: 1 16 org.apache.phoenix.schema.types.PDataType$2 2950: 1 16 org.springframework.data.redis.connection.convert.StringToRedisClientInfoConverter Total 3090439 316004152 ```
java中有关TreeSet的一个小疑问
看书上说java所有集合框架的具体类都至少有两种构造方式,一种是无参构造方法,一种是用另一个已有的容器来构造。 比如先前已经有了一个HashSet类的对象hh,但是他内部的元素是无序的,而我们这时再创建一个TreeSet(hh),他就会根据hh中存有元素自带的compareTo方法自动排好序,并且这个排序过程只进行一次。而如果我们将这些带排序的元素逐个加入到TreeSet中去,则就要加一次排一次序,会更耗时间。 请问,是不是有所遇到这种用到TreeSet或者TreeMap的情况,一般都先会把元素存储到类似与Hashxx这种无序的容器中,然后再进行一次性的大转移,完成排序?实际项目操作中都是这样干的么?
TreeMap集合实现 继承Comparable类
使用TreeMap保存对象元素时,对象类必须的继承Comparable类,实现其下的方法public int compareTo(T o) 为何
排行榜如果用TreeMap的话,出现并列排名如何处理?
例如金钱排行榜,用拥有的金钱作为key. 如果出现了相同的金钱的话那么key值就会重复. 我曾考虑在value上使用List保存相同的排名, 但是这会增加使用ceilingKey等函数的使用复杂度
使用pyecharts的TreeMap时出现错误
![图片说明](https://img-ask.csdn.net/upload/201908/29/1567074814_222447.png)
java中数值增删问题,map
在java中一般要加final修饰,比如public final class Pattern{}。定义一些对象,并都设置相应的值,通过方法更改删除,为什么用TreeMap删掉的是改过的值?
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
8年经验面试官详解 Java 面试秘诀
作者 |胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。 Java程序员准备和投递简历的实...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
MyBatis研习录(01)——MyBatis概述与入门
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis原本是apache的一个开源项目iBatis, 2010年该项目由apache software foundation 迁移到了google code并改名为MyBatis 。2013年11月MyBatis又迁移到Github。
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
Python爬虫精简步骤1 获取数据
爬虫,从本质上来说,就是利用程序在网上拿到对我们有价值的数据。 爬虫能做很多事,能做商业分析,也能做生活助手,比如:分析北京近两年二手房成交均价是多少?广州的Python工程师平均薪资是多少?北京哪家餐厅粤菜最好吃?等等。 这是个人利用爬虫所做到的事情,而公司,同样可以利用爬虫来实现巨大的商业价值。比如你所熟悉的搜索引擎——百度和谷歌,它们的核心技术之一也是爬虫,而且是超级爬虫。 从搜索巨头到人工...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
web前端javascript+jquery知识点总结
1.Javascript 语法.用途 javascript 在前端网页中占有非常重要的地位,可以用于验证表单,制作特效等功能,它是一种描述语言,也是一种基于对象(Object)和事件驱动并具有安全性的脚本语言 ...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o...
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ...... ...
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!...
渗透测试-灰鸽子远控木马
木马概述 灰鸽子( Huigezi),原本该软件适用于公司和家庭管理,其功能十分强大,不但能监视摄像头、键盘记录、监控桌面、文件操作等。还提供了黑客专用功能,如:伪装系统图标、随意更换启动项名称和表述、随意更换端口、运行后自删除、毫无提示安装等,并采用反弹链接这种缺陷设计,使得使用者拥有最高权限,一经破解即无法控制。最终导致被黑客恶意使用。原作者的灰鸽子被定义为是一款集多种控制方式于一体的木马程序...
Python:爬取疫情每日数据
前言 目前每天各大平台,如腾讯、今日头条都会更新疫情每日数据,他们的数据源都是一样的,主要都是通过各地的卫健委官网通报。 以全国、湖北和上海为例,分别为以下三个网站: 国家卫健委官网:http://www.nhc.gov.cn/xcs/yqtb/list_gzbd.shtml 湖北卫健委官网:http://wjw.hubei.gov.cn/bmdt/ztzl/fkxxgzbdgrfyyq/xxfb...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名...
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计...
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允许使用这...
作为程序员的我,大学四年一直自学,全靠这些实用工具和学习网站!
我本人因为高中沉迷于爱情,导致学业荒废,后来高考,毫无疑问进入了一所普普通通的大学,实在惭愧???? 我又是那么好强,现在学历不行,没办法改变的事情了,所以,进入大学开始,我就下定决心,一定要让自己掌握更多的技能,尤其选择了计算机这个行业,一定要多学习技术。 在进入大学学习不久后,我就认清了一个现实:我这个大学的整体教学质量和学习风气,真的一言难尽,懂的人自然知道怎么回事? 怎么办?我该如何更好的提升自...
粒子群算法求解物流配送路线问题(python)
1.Matlab实现粒子群算法的程序代码:https://www.cnblogs.com/kexinxin/p/9858664.html matlab代码求解函数最优值:https://blog.csdn.net/zyqblog/article/details/80829043 讲解通俗易懂,有数学实例的博文:https://blog.csdn.net/daaikuaichuan/article/...
教你如何编写第一个简单的爬虫
很多人知道爬虫,也很想利用爬虫去爬取自己想要的数据,那么爬虫到底怎么用呢?今天就教大家编写一个简单的爬虫。 下面以爬取笔者的个人博客网站为例获取第一篇文章的标题名称,教大家学会一个简单的爬虫。 第一步:获取页面 #!/usr/bin/python # coding: utf-8 import requests #引入包requests link = "http://www.santostang....
前端JS初级面试题二 (。•ˇ‸ˇ•。)老铁们!快来瞧瞧自己都会了么
1. 传统事件绑定和符合W3C标准的事件绑定有什么区别? 传统事件绑定 &lt;div onclick=""&gt;123&lt;/div&gt; div1.onclick = function(){}; &lt;button onmouseover=""&gt;&lt;/button&gt; 注意: 如果给同一个元素绑定了两次或多次相同类型的事件,那么后面的绑定会覆盖前面的绑定 (不支持DOM事...
相关热词 c# 时间比天数 c# oracle查询 c# 主动推送 事件 c# java 属性 c# 控制台 窗体 c# 静态类存值 c#矢量作图 c#窗体调用外部程式 c# enum是否合法 c# 如何卸载引用
立即提问