小编Zha*_*ang的帖子

如何在Java列表中获得反向列表视图?

我想在列表上有一个反向列表视图(以类似的方式List#sublist提供列表上的子列表视图).是否有一些提供此功能的功能?

我不想制作任何类型的列表副本,也不想修改列表.

如果我在这种情况下至少可以在列表上获得反向迭代器就足够了.


另外,我知道如何自己实现这一点.我只是问Java是否已经提供了这样的东西.

演示实施:

static <T> Iterable<T> iterableReverseList(final List<T> l) {
    return new Iterable<T>() {
        public Iterator<T> iterator() {
            return new Iterator<T>() {
                ListIterator<T> listIter = l.listIterator(l.size());                    
                public boolean hasNext() { return listIter.hasPrevious(); }
                public T next() { return listIter.previous(); }
                public void remove() { listIter.remove(); }                 
            };
        }
    };
}
Run Code Online (Sandbox Code Playgroud)

我刚刚发现某些List实现具有descendingIterator()我需要的功能.虽然没有一般的这样的实现List.这有点奇怪,因为我看到的实现已经LinkedList足够通用了List.

java collections reverse iterator list

209
推荐指数
8
解决办法
25万
查看次数

抽象类中的私有构造函数

在Java中,在抽象类中使用私有构造函数的目的是什么?

在一篇评论中我得到了这个问题,我很好奇,我们需要以什么样的方式使用构造函数呢?

我认为它可以与抽象类中的另一个构造函数一起使用,但这非常简单.它也可以用于构造静态内部类,这将超越抽象类.

也许有更优雅的用法?

java constructor private class abstract

13
推荐指数
2
解决办法
1万
查看次数

如何在python tkinter中绑定Ctrl + /?

<Control-Shift-Key-0>
<Control-Key-plus>
Run Code Online (Sandbox Code Playgroud)

工作,但

<Control-Key-/>
Run Code Online (Sandbox Code Playgroud)

没有.

我无法在python中绑定ctrl+ /.是否有任何可能的密钥文件?

python key-bindings

13
推荐指数
2
解决办法
2万
查看次数

反转队列<Integer>并将其转换为int数组

我有一个Queue<Integer>声明为Queue<Integer> queue=new LinkedList();,我需要反转其中的元素顺序,然后将其转换为int数组.我在下面写了代码:

Collections.reverse((List)queue);
int[] res=queue.stream().mapToInt(Integer::intValue).toArray();
Run Code Online (Sandbox Code Playgroud)

此代码有两个问题:

  1. 表达铸造(List)queue;
  2. 我想知道是否有单线解决方案.

那么我们有更优雅的方式来做到这一点吗?


澄清问题:

队列是否反转并不重要.我需要的是反转元素的int数组.

java queue collections

11
推荐指数
3
解决办法
996
查看次数

何时使用Optional.orElse()而不是Optional.orElseGet()

我读过的回答这个问题有关的区别Optional.orElse()Optional.orElseGet().

似乎orElseGet()总是比orElse()懒惰的评估更有效,并且即使在对像这样的非常简单的示例进行基准测试时它也显而易见(参见第4部分):https://www.baeldung.com/java-optional-or-else- VS-或-ELSE-得到

那么,是否有任何使用情况,orElse而不是使用orElseGet

java optional java-8

11
推荐指数
1
解决办法
669
查看次数

java异常会终止整个java应用程序吗?

我曾经认为,当发生异常时,整个java应用程序将被终止.例如,我编写了一个测试函数来测试我的想法.

public void test(){
    File fileDir=new File(sourceDataDir);
    if(fileDir.exists()){
        File[] files = fileDir.listFiles();
        for(int index=0 ; index<files.length ; index++){
            System.out.println("index = "+index);
            File file = files[index];
            if(index == 1)//delete a file to cause a FileNotFoundException
                file.delete();
            try {
                BufferedReader in = new BufferedReader(new FileReader(file));
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我删除了一个FileNotFoundException手动文件.我以前认为整个应用程序将在异常发生时终止.但实际上,应用程序将继续读取剩余的文件.所以,我的问题是,在什么情况下异常将导致整个应用程序被终止?

java multithreading jvm exception-handling exception

7
推荐指数
3
解决办法
2万
查看次数

Ubuntu 上 Docker 中的 MySQL:警告:全局可写配置文件被忽略

在我的 中/etc/mysql/my.cnf,我已经:!includedir /etc/mysql/mysql.conf.dconfiged ,并且根据https://dev.mysql.com/doc/refman/8.0/en/option-files.htmlmy.cnf ,我认为我的目录中的文件!includedir应该覆盖。/etc/mysql/my.cnf

但是我在重新启动 mysql 服务器时收到警告,并确认我的该文件World-writable config file /etc/mysql/mysql.conf.d/my.cnf is ignored中的配置不起作用。为什么会出现警告,以及如何使其发挥作用?my.cnf!includedir

语境:

Docker 中的 Ubuntu 16.04.3,mysql 5.7.22

笔记:

我知道如果我的cnf文件包含多个点可能不起作用:

https://serverfault.com/questions/918530/mysql-includedir-not-working

但我不认为我正在解决这个问题。

java mysql docker

5
推荐指数
2
解决办法
1万
查看次数

使用 Egit 在 Eclipse 中更改作者和提交者详细信息(姓名和电子邮件地址)

使用 Eclipse Indigo 通过 Egit 提交时,如何永久更改作者和提交者姓名?

我做了一些谷歌搜索,但我找不到作者和提交者姓名的来源。

eclipse github egit

2
推荐指数
1
解决办法
1万
查看次数

如何在Spring启动时配置Spring mvc静态资源映射配置:<mvc:resources mapping ... />?

我想用spring boot开发web应用程序,我想在jsp文件中解决我的javascript和css资源.我从dispatcher-servlet.xml中的jsp配置我对这些文件的访问,如下所示:

<mvc:resources mapping="/resources/**" location="/WEB-INF/resources/" />
Run Code Online (Sandbox Code Playgroud)

在我的jsp文件中,我可以使用下面的代码来访问:

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
 <img class="first-slide home-image" src="<spring:url value="/resources/images/back1.jpg"/>" alt="First slide">
Run Code Online (Sandbox Code Playgroud)

我怎么做配置mvc:资源映射在春季启动?

spring spring-mvc spring-boot

2
推荐指数
1
解决办法
9165
查看次数

如果我们使用try-with-resource,是否需要关闭资源

我在我的代码中使用try-with-resource块,想知道是否需要在方法结束时关闭资源或不需要?

try (S3Object object = s3.getObject(new GetObjectRequest(bucketName, key));
  BufferedReader br = new BufferedReader(new InputStreamReader(object.getObjectContent()));
  BufferedWriter bw = new BufferedWriter(new FileWriter(new File("output.txt")))){
  String line;

  while((line=br.readLine())!=null){
    bw.write(line);
    bw.newLine();
    bw.flush();
  }
}
Run Code Online (Sandbox Code Playgroud)

java try-with-resources

2
推荐指数
2
解决办法
373
查看次数

kubernetes 标签 node-role.kubernetes.io/master 和 node-role.kubernetes.io/control-plane 有什么区别?

我是 kubernetes 的新手,我看到我的节点的角色之一是control-plane,master. 有什么不同?主节点是运行 kube-apiserver 的节点吗?那么什么定义了控制平面节点?

我正在使用 kubectl 1.20.2(kubeadm 也是 1.20.2)。

kubernetes

2
推荐指数
1
解决办法
336
查看次数