小编Sau*_*mar的帖子

常量值未在运行时反映

假设您编译以下两个类.第一个是代表客户; 第二,图书馆课.

public class Test{
    public static void main(String[] args) {
        System.out.println(Lib.FIRST + " " +
                           Lib.SECOND + " " +
                           Lib.THIRD);
    }
}


public class Lib{
    private Lib() { }; // Uninstantiable
    public static final String FIRST = "the";
    public static final String SECOND = null;
    public static final String THIRD = "set";
}
Run Code Online (Sandbox Code Playgroud)

打印:

{null set}

现在假设您按如下所示修改库类并重新编译它而不是客户端程序:

public class Lib{
    private Lib() { }; // Uninstantiable
    public static final String FIRST = "physics";
    public static final String SECOND …
Run Code Online (Sandbox Code Playgroud)

java compiler-construction constants

4
推荐指数
1
解决办法
173
查看次数

$(window).width()在IE9中不起作用

我正在做类似的事情:

// get the screen height and width 
var maskHeight = $(document).height(); 
var maskWidth = $(window).width();

// calculate the values for center alignment
var dialogLeft = (maskWidth/2) - ($('#dialog-box').width()/2);
Run Code Online (Sandbox Code Playgroud)

但看起来它在IE9中不起作用.

javascript jquery cross-browser internet-explorer-9

3
推荐指数
1
解决办法
5492
查看次数

使用比较器的意外输出

我有以下程序

import java.util.*;
public class Test {
    public static void main(String[] args) {
        Integer[] array = { 3, 1, 4, 1, 5, 9 };
        Arrays.sort(array, new Comparator<Integer>() {
            public int compare(Integer i1, Integer i2) {
                return i1 < i2 ? -1 : (i2 > i1 ? 1 : 0);
            }
        });
        System.out.println(Arrays.toString(array));
    }
}
Run Code Online (Sandbox Code Playgroud)

这给了我输出[3,1,4,1,5,9].为什么?

java sorting

3
推荐指数
1
解决办法
131
查看次数

如何使用spring security显示hide元素

我有一个按钮,我想在登录页面中显示.

所以当用户登录时我想隐藏这个按钮.我认为

<sec:authorize access="isAuthenticated()">
Run Code Online (Sandbox Code Playgroud)

对此有用,所以我在jsp中包含了类似的内容

<sec:authorize access="not isAuthenticated()">
            <div class="pull-right">
Run Code Online (Sandbox Code Playgroud)

但是在登录页面和登录后都看不到.

可能是什么问题.

<http pattern="/foobar/static-wro4j/**" security="none"/>
<http pattern="/foobar/static/**" security="none"/>
<http pattern="/foobar/login*" security="none"/>
<http pattern="/foobar/syndic/**" security="none"/>
<http pattern="/foobar/register/**" security="none"/>
<http pattern="/foobar/lostpassword/**" security="none"/>

<http auto-config="true" use-expressions="true" create-session="ifRequired">
    <remember-me key="foobarRememberKey" token-validity-seconds="2592000"/>
    <intercept-url pattern="/foobar/presentation" access="permitAll()"/>
    <intercept-url pattern="/foobar/tos" access="permitAll()"/>
    <intercept-url pattern="/foobar/license" access="permitAll()"/>
    <intercept-url pattern="/foobar/404-error" access="permitAll()"/>
    <intercept-url pattern="/foobar/500-error" access="permitAll()"/>
    <intercept-url pattern="/foobar/rest/users" method="POST" access="permitAll()"/>
    <intercept-url pattern="/metrics/**" access="hasRole('ROLE_ADMIN')"/>
    <intercept-url pattern="/**" access="isAuthenticated()"/>

    <form-login
            login-processing-url="/foobar/authentication"
            login-page="/foobar/login"
            authentication-failure-url="/foobar/login?action=loginFailure"
            default-target-url="/foobar/"
            authentication-success-handler-ref="foobarAuthenticationSuccessHandler"/>
    <http-basic/>
    <logout logout-url="/foobar/logout"
            logout-success-url="/foobar/login"/>

    <openid-login authentication-failure-url="/foobar/login?action=loginFailure"
                  user-service-ref="openIdAutoRegisteringUserDetailsService">
        <!-- Only Google Apps is …
Run Code Online (Sandbox Code Playgroud)

spring spring-security

3
推荐指数
1
解决办法
2963
查看次数

使用Java 8的更好方法

我将以下代码转换为java 8代码.我想知道我是否做得恰到好处还是有其他不错的方法.

Java 7

for (final Category category : categories) {
      final List<Category> subCategories = getCategories(category);
      if (subCategories != null) {
        currentLevel.addAll(subCategories);
      }
    }
Run Code Online (Sandbox Code Playgroud)

Java8

categories.stream().map(category -> getCategories(category)).filter(list->list!=null).flatMap(cat -> cat.parallelStream()).collect(Collectors.toList())
Run Code Online (Sandbox Code Playgroud)

任何java 8方式将下面的代码解析成紧凑的形式.

while (CollectionUtils.isNotEmpty(currentLevel)) {
  for (final Iterator<Category> iterator = currentLevel.iterator(); iterator.hasNext();) {
    final Category category = iterator.next();
    if (result == null) {
      result = new HashSet<Category>();
    }
    if (!result.add(category)) {
      // avoid cycles by removing all which are already found
      iterator.remove();
    }
  }

  if (currentLevel.isEmpty()) {
    break;
  }
  final …
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

3
推荐指数
1
解决办法
165
查看次数

在Java 8 Stream中解决没有最终变量

有没有办法将以下代码转换为Java 8 Stream.

    final List ret = new ArrayList(values.size());
    double tmp = startPrice;
    for (final Iterator it = values.iterator(); it.hasNext();) {
      final DiscountValue discountValue = ((DiscountValue) it.next()).apply(quantity, tmp, digits, currencyIsoCode);
      tmp -= discountValue.getAppliedValue();
      ret.add(discountValue);
    }
Run Code Online (Sandbox Code Playgroud)

Java 8流抱怨没有最终变量tmp?有办法解决这种情况吗?

在封闭范围内定义的局部变量tmp必须是最终的或有效的最终

在此输入图像描述

java java-8 java-stream

3
推荐指数
1
解决办法
2055
查看次数

JavaFX 8滚动条css

我正在使用以下 css 来自定义我的滚动条

/* The main scrollbar **track** CSS class  */
.workspace-grid .scroll-bar:horizontal .track,
.workspace-grid .scroll-bar:vertical .track{
    -fx-background-color:transparent;
    -fx-border-color:transparent;
    -fx-background-radius: 0em;
    -fx-border-radius:2em;
}

/* The increment and decrement button CSS class of scrollbar */
.workspace-grid .scroll-bar:horizontal .increment-button ,
.workspace-grid .scroll-bar:horizontal .decrement-button {
    -fx-background-color:transparent;
    -fx-background-radius: 0em;
    -fx-padding:0 0 10 0;

}

/* The increment and decrement button CSS class of scrollbar */

.workspace-grid .scroll-bar:vertical .increment-button ,
.workspace-grid .scroll-bar:vertical .decrement-button {

    -fx-background-color:transparent;
    -fx-background-radius: 0em;
    -fx-padding:0 10 0 0;

}

.workspace-grid .scroll-bar .increment-arrow, …
Run Code Online (Sandbox Code Playgroud)

javafx javafx-8

3
推荐指数
1
解决办法
9255
查看次数

视图上的角度材质输入上的蓝色背景颜色

我的登录页面中有一个登录框。

我有用户名和密码字段,并且我正在使用 Angular 材料。下面是我的 html。在视图中,输入框有蓝色背景。如何去除蓝色背景?

       <form [formGroup]="reactiveForm" (ngSubmit)="onSubmit()">
            <div fxLayout="row" fxLayoutAlign="space-around center">
                <mat-form-field appearance="outline">
                    <mat-label>{{ 'auth.email' | translate }}</mat-label>
                    <input matInput type="email" email placeholder="{{ 'auth.email-placeholder' | translate }}" required formControlName="email" autocomplete="off">
                    <mat-icon matSuffix>email</mat-icon>
                    <mat-error *ngIf="reactiveForm.get('email').invalid">
                        {{ 'auth.error.email' | translate }}
                    </mat-error>
                </mat-form-field>
            </div>
            <div fxLayout="row" fxLayoutAlign="space-around center">
                <mat-form-field appearance="outline">
                    <mat-label>{{ 'auth.password' | translate }}</mat-label>
                    <input matInput type="password" placeholder="{{ 'auth.password-placeholder' | translate }}" required formControlName="password" autocomplete="off">
                    <mat-icon matSuffix>vpn_key</mat-icon>
                    <mat-error *ngIf="reactiveForm.get('password').invalid">
                        {{ 'auth.error.password' | translate }}
                    </mat-error>
                </mat-form-field>
            </div>
            <div fxLayout="row" fxLayoutAlign="space-around …
Run Code Online (Sandbox Code Playgroud)

html css angular-material angular

3
推荐指数
1
解决办法
1898
查看次数

使用迭代器迭代集合是否比正常迭代更有效

我有一个如下集合:

  final List list = new ArrayList(3);
Run Code Online (Sandbox Code Playgroud)

做下面这样的事情是否有效

    for (final Iterator iter = list.iterator(); iter.hasNext();)
    {
        // do something
    }
Run Code Online (Sandbox Code Playgroud)

要么

for(final Object obj : list){
// do something 
}
Run Code Online (Sandbox Code Playgroud)

java collections iterator

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

Java流中的continue关键字的等价物?

  for (final Prices ppr : prices) {
    if (!currency.getCode().equals(ppr.getCurrency().getCode())) {
      continue;
    }
    return ppr.getPrice();
  }
Run Code Online (Sandbox Code Playgroud)

上面的代码可以转换成Java流代码吗?我收到continue关键字错误...

java java-8 java-stream

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