小编hev*_*ev1的帖子

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

如何在Java中的'~|~'分隔符上拆分字符串?

我输入了 String '~|~' 作为分隔符。

例如:String s = "1~|~Vijay~|~25~|~Pune"; 当我在 Java 中用 '~\\|~' 拆分它时,它工作正常。

String sa[] = s.split("~\\|~", -1);
for(String str : sa) {
    System.out.println(str);
}
Run Code Online (Sandbox Code Playgroud)

我得到以下输出。

1
Vijay
25
Pune
Run Code Online (Sandbox Code Playgroud)

当我通过传递命令行参数('~\\|~')运行同一个程序时。它没有正确解析字符串并在输出下方给出它。

1
|
Vijay
|
25
|
Pune
Run Code Online (Sandbox Code Playgroud)

有没有其他人面临同样的问题?请对此问题发表评论。

java regex core

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

Integer.toString() 与 Integer.parseInt()

为什么第一个条件是false,第二个条件是true?我确信他们都是真的。

System.out.println(Integer.toString(3) == "3");
System.out.println(Integer.parseInt("3") == 3);
Run Code Online (Sandbox Code Playgroud)

java

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

合并 Java 中的两个映射值,如果键相同,则附加 Java 7 或 Java 8 中未覆盖的值

我想合并 2Map秒,但是当键相同时,应该附加值而不是覆盖值。

让我们说

Map<String, Set<String>> map1 = new HashMap<>();
Set<String> set1 = new HashSet<>();
set1.add("AB");
set1.add("BC");
map1.put("ABCD",set1);

Map<String, Set<String>> map2 = new HashMap<>();
Set<String> set2 =new HashSet<>();
set2.add("CD");
set2.add("EF");
map2.put("ABCD",set2);

map1.putAll(map2);
Run Code Online (Sandbox Code Playgroud)

所以这里的键是相同的。我知道如果键相同,putAll 将覆盖值

但我正在寻找类似的输出

{ABCD=[AB,BC,CD,ED]}
Run Code Online (Sandbox Code Playgroud)

如果有人能帮我解决,将不胜感激。

java dictionary java-8 mergemap

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

方法递归更新一个值到顶部

我正在尝试创建一种递归方法,当您单击层次结构时,所有父项都将被启用。

我知道如何使递归方法自上而下,例如,找到一个孩子,但我不知道如何使递归方法自上而下。

例如:

const data =  [{
    "id": 1,
    "parentId": null,
    "selected": false,
    "children": [{
        "id": 2,
        "parentId": 1,
        "selected": false,
        "children": [{
            "id": 3,
            "parentId": 2,
            "selected": false,
            "children": [{
                "id": 4,
                "parentId": 3,
                "selected": false,
                "children": []
            }]
        }]
    }]
 }, {
    "id": 1,
    "parentId": null,
    "selected": true,
    "children": []
 }, {
    "id": 1,
    "parentId": null,
    "selected": true,
    "children": []
 }]
Run Code Online (Sandbox Code Playgroud)

When the item with id4 is selected, the selectedproperty of all its ancestors should be …

javascript

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

根据字符串在模板文字中选择一个选项

我正在创建一个管理面板。在此管理面板上,超级管理员将能够编辑其他管理员的角色。在编辑屏幕上,我有一个下拉列表,其中包含管理员可以拥有的可用角色。我正在使用模板文字将此 HTML 注入到我自己设计的模式中。我的问题是,我不确定如何动态选择包含数据库中保存的管理员角色值的选项。

例如,如果管理数据的 JSON 是这样的,{ name: John Smith, role: admin }我如何在模板文字中自动选择它:

`<select class="form-control" id="editRole">
      <option value="Editor">Editor</option>
      <option value="admin">Admin</option>
      <option value="Super Admin">Super Admin</option>
    </select>`
Run Code Online (Sandbox Code Playgroud)

我尝试了这样的方法,但似乎不起作用:

const adminData = {name: John Smith, role: admin};

`<select class="form-control" id="editRole">
${document.querySelector('option[value*="${adminData.role}"]').selected = true}
<option value="Editor">Editor</option>
  <option value="admin">Admin</option>
  <option value="Super Admin">Super Admin</option>
</select>`
Run Code Online (Sandbox Code Playgroud)

javascript template-literals

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

根据html5中相同形式的另一个字段中的数据在输入上设置maxlength的方法?

如何将文本输入字段中的maxlength属性设置为等于用户在同一表单中的数字输入字段中输入的值?

<form action="/action_page.php">
  <input id="number" type="number" value="20" max="40">
  <input type="text" id="username" name="username" maxlength="10"><br><br>
  <input type="submit" value="Submit">
</form>

Run Code Online (Sandbox Code Playgroud)

我猜这可能需要 JavaScript?

html javascript forms web-frontend

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

如何获得日期之间的月数?

在这个例子中,nownow + 2 months不等于 2之间的差异,尽管我认为LocalDate数学是这样工作的:

import java.time.LocalDate;
import static java.time.temporal.ChronoUnit.MONTHS;

public class MyClass {
    public static void main(String... args) {
            LocalDate now = LocalDate.of(2020, 7, 31);
            LocalDate later = now.plusMonths(2);
            
            System.out.println("Now: " + now);
            System.out.println("Later: " + later);
            System.out.println("Months between now and later: " + MONTHS.between(now, later));
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

Now: 2020-07-31
Later: 2020-09-30
Months between now and later: 1
Run Code Online (Sandbox Code Playgroud)

我发现这一点只是因为我碰巧运行了一个单元测试,该测试的日期超出了预期......

查看 LocalDate.addMonths 的 javadoc:

此方法分三步将指定的金额添加到月份字段:

Add the input months to the month-of-year field …
Run Code Online (Sandbox Code Playgroud)

java java-time

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

未定义字符串时如何避免“未定义”出现在字符串中 - Javascript

我有 3 个动态变量,可能是nullor undefined

例子:

var str1= " hello";
var str2= " world";
var str= " how are you?";
Run Code Online (Sandbox Code Playgroud)

现在我将这些字符串连接在一起以在我的搜索列表中形成一个查询:

query = str1&& str1 + str2&& str2 + str3&& str3; //o/p: "hello world how are you?
Run Code Online (Sandbox Code Playgroud)

结果很好,但是在任何情况下,当 str 值之一为 null 或为空时,当我连接这些字符串时,我会得到这个:

query = str1&& str1 + str2&& str2 + str3&& str3; // o/p: "hello world undefined"
Run Code Online (Sandbox Code Playgroud)

我怎样才能避免这个 undefined 出现在我的字符串中?

javascript

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

检测给定的三个单词字符串中的连字符模式

我想搜索一个字符串是否包含以下模式,该模式仅由两个-单个单词分隔的符号(连字符)组成,而不是短语或句子:

字-字-字

其他条件可以简单地忽略。之间的空格不影响模式,所以上面的模式和这个模式是一样的:

词-词-词

如果有这样的模式,我想返回真,否则我显然想要一个假!

到目前为止,我用连字符分割字符串并检查是否只有其中两个,并且只有 3 个单词,不多也不少,但我认为可能有更有效的方法......

javascript

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