小编fed*_*dup的帖子

如何"分隔"给定字符串中的整数?

我正在做练习,我必须从键盘输入一个字符串.该字符串将是简单的算术,例如"2 + 4 + 6 - 8 + 3 - 7".是的,格式必须是这样的.中间有单个空格.

这个想法是采取这个字符串,并最终打印出答案.到目前为止,这是我的代码:

public class AddemUp {
  public static void main(String[] args) {
    Scanner kb = new Scanner(System.in);
    System.out.print("Enter something like 8 + 33 + 1345 + 137: ");
    String s = kb.nextLine();
    Scanner sc = new Scanner(s);
    sc.useDelimiter("\\s*\\+\\s*|\\s*\\-\\s*");
    int sum = 0;
    int theInt;
    Scanner sc1 = new Scanner(s);
    sc1.useDelimiter("\\s*\\s*");
    String plusOrMinus = sc1.next();
    int count = 0;
    if(s.startsWith("-"))
    {
        sum -= sc.nextInt();
    }
    while(sc.hasNextInt())
    {
        theInt = sc.nextInt();
        if(count …
Run Code Online (Sandbox Code Playgroud)

java regex loops pattern-matching delimiter

9
推荐指数
1
解决办法
1917
查看次数

为什么明明使用了未使用的方法却出现 PMD 违规

PMD 失败:...规则:UnusedPrivateMethod 优先级:3 避免未使用的私有方法,例如“printMyString(String)”

private void anyMethod() {
    var myString = "a String";
    printMyString(myString);
}

private void printMyString(String string) {
    System.out.println(string);
}
Run Code Online (Sandbox Code Playgroud)

使用maven这个插件

            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-pmd-plugin</artifactId>
            <version>3.12.0</version>
Run Code Online (Sandbox Code Playgroud)

java pmd java-11

6
推荐指数
1
解决办法
4686
查看次数

为什么此SynchronizedList线程包装器是安全的?

我正在阅读“ Java并发实践”,这种情况对我来说还不太清楚。为什么这段代码是ThreadSafe?

@ThreadSafe
public class ListHelper<E> {
    public List<E> list =
        Collections.synchronizedList(new ArrayList<E>());
    ...
    public boolean putIfAbsent(E x) {
        synchronized (list)  {
            boolean absent = !list.contains(x);
            if (absent)
} }
}

Run Code Online (Sandbox Code Playgroud)

我们锁定SynchronizedList 列表的实例, 但在使用内部对象的内部 final Object mutex; // Object on which to synchronize

  public void add(int index, E element) {
            synchronized (mutex) {list.add(index, element);}
        }
Run Code Online (Sandbox Code Playgroud)

我们仍然在两个不同的对象上具有锁。为什么安全呢?

java concurrency

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

标签 统计

java ×3

concurrency ×1

delimiter ×1

java-11 ×1

loops ×1

pattern-matching ×1

pmd ×1

regex ×1