小编Pur*_*ret的帖子

who knows me? (Chronicles of an object)

If an object has 5 references can that object find out what is referenced to him? Because I know that Java (and hopefully C#) have a list of that for the GC.

c# reference object

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

用sed删除除括号之外的所有内容,然后缩进

我有一个巨大的文件,一个非常庞大的文件(大约600 + MB的文本).事实上他们是jsons.每个json都在一个新的线上,只有几种口味.

他们看着像是:

{"text":{"some nested words":"Some more","something else":"Yeah more stuff","some list":["itemA","ItemB","itemEtc"]},"One last object":{"a thing":"and it's value"}}
Run Code Online (Sandbox Code Playgroud)

而我想要的是它通过sed,suck out文本,并为每个nexted对放入一些缩进,所以我们得到:

{
 -{
--[]
 -}
--{}
 -}
}
Run Code Online (Sandbox Code Playgroud)

(我不是100%肯定我在输出上得到了嵌套,我认为这是正确的)

这可能吗?我看到了这个,这是我能想象的最接近的,但是它摆脱了括号二.

我注意到那里使用braching的答案,所以我认为我需要它,我需要做某种s/pattern/newline+tab/space/g类型的命令,但我无法弄清楚如何或如何制作...

有人可以帮忙吗?它不一定是纯粹的,sed但这是首选.

bash awk sed tr

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

改善bash中的睡眠排序

我偶然发现了这个漂亮的bash脚本,这是一个小小的borked.

#!/bin/bash
function f() {
    sleep "$1"
    echo "$1"
}
while [ -n "$1" ]
do
    f "$1" &
    shift
done
wait
Run Code Online (Sandbox Code Playgroud)

它会按照数字给出的秒数休眠,然后输出该数字.最低数字首先唤醒.

我认为可以通过首先将数字除以列表中的最大数字,然后运行它,然后乘以出口时的最大值来改进.

这是我的第一次尝试:

#!/bin/bash

declare -a to_sort

function f() {
    sleep "$1"
    final_var=$(echo "$1*$2"|bc)
    echo "$1"
}
function max(){
for var in "$@"
do
    if [ "$var" -gt "$max" ] # Using the test condition
    then
        max="$var"
    fi
done
}

echo "$1"| read -a to_sort

let max_var = max to_sort

for i in "${to_sort[@]}"
do
    parsed_var=$(echo "$i/$max_var"|bc)
    f …
Run Code Online (Sandbox Code Playgroud)

sorting bash

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

为什么我的java类实现了我不期望的方法?

我有这个界面:

public interface IDeck<T extends IDeck<T,S>,S extends ICard<S>> extends Comparable<T>, Collection<S>{
    public Set<S> getDeck();
    public void setDeck(Set<S> newDeck);
}
Run Code Online (Sandbox Code Playgroud)

然后我创建一个类实现它,这里是标题和前几个方法:

public class PlayingCardDeck implements IDeck<PlayingCardDeck,PlayingCard> {

    @Override
    public int compareTo(PlayingCardDeck o) {
        // TODO Auto-generated method stub
        return 0;
    }
Run Code Online (Sandbox Code Playgroud)

到目前为止,我希望它具有可比性.

    @Override
    public boolean add(PlayingCard e) {
        // TODO Auto-generated method stub
        return false;
    }
Run Code Online (Sandbox Code Playgroud)

是的,它可以包含PlayingCards

    @Override
    public boolean addAll(Collection<? extends PlayingCard> c) {
        // TODO Auto-generated method stub
        return false;
    }
Run Code Online (Sandbox Code Playgroud)

这是好的我认为,只要集合元素扩展了PlayingCard,尽管这与add(PlayingCard e)方法不匹配.

    @Override
    public boolean contains(Object …
Run Code Online (Sandbox Code Playgroud)

java generics inheritance interface

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

为什么我的分裂过于野心勃勃?

在这个类中,我在不同的分隔符(即||和&&)上拆分变量

这是我的班级:

public class Test {


    public static void main(String[] args) {
        String orStatement = "here||there";
        String andStatement = "here&&there";
        splitOr(orStatement);
        splitAnd(andStatement);
    }
    public static String[] splitOr(String stringvar){

        if(!stringvar.contains("||")){
            throw new IllegalArgumentException("Must contain a double pipe || to split into or statements");
        }
        String[] orArray = stringvar.split("||");
        for(int i=0;i<orArray.length;i++){
            System.out.println(orArray[i]);
        }
        return orArray;
    }

    public static String[] splitAnd(String stringvar){

        if(!stringvar.contains("&&")){
            throw new IllegalArgumentException("Must contain a double ampersand && to split into and statements");
        }
        String[] andArray = stringvar.split("&&");
        for(int i=0;i<andArray.length;i++){ …
Run Code Online (Sandbox Code Playgroud)

java split

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

两种因素的最快方式?

我正在编写一些代码,我希望能够快速分解出2的幂.

当用二进制表示时,我注意到有些功能为2的数字方便的东西:

27959296 = 0b1101010101010000000000000 = 110101010101 * 10000000000000 = 3413 * 2^13
Run Code Online (Sandbox Code Playgroud)

如果我可以将这些零点移位,我会留下其他因素.在浏览了谷歌,SO和其他一些地方,并使用Wolfram | alpha之后,我无法看到一个很好的方法来做到这一点,而无需迭代并在每个操作上进行两位/一位移位.如果我将它转换为字符串,我可能可以使用字符串操作来拆分这些零.

我尝试过使用日志规则来说:

log base 2(27959296) = log(3413 * 2^13)/log(2) = 13+ log(3413)/log(2)
Run Code Online (Sandbox Code Playgroud)

但我错过了区分13和log(3413)/log(2)24.73 之间的逻辑......这将给出一个"简单"的答案.

最后有一种方法numberOfTrailingZeros给了我一个很好的答案,但我不知道它是如何在引擎盖下,也不知道它有多快.

这是该方法的SSCCE(从这里开始):

import java.lang.*;

public class IntegerDemo {

   public static void main(String[] args) {

     int i = 27959296;
     System.out.println("Number = " + i);

     /* returns the string representation of the unsigned integer value 
     represented by the argument in binary (base 2) */
     System.out.println("Binary = " …
Run Code Online (Sandbox Code Playgroud)

java math bit-manipulation

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

仅模糊输入内的文本,而不是整个<input>元素

由于各种原因,我想以图形方式模糊(即不聚焦/模糊)输入内部的文本type=text,而不是整个元素.

有没有办法做到这一点?

我目前有这个:

.validation:not(:focus) {
    -webkit-filter: blur(3px);
    filter: blur(3px);
    border:0;
}
    
.validation-border{
    border: 1px black solid;
    z-index:20;
}
Run Code Online (Sandbox Code Playgroud)
<p>
    <label>Text</label>
    <span class="validation-border">
        <input class="validation" type="text" value="blurred text"/>
    </span>

    <label>Some text</label>
    <input/>
</p>
Run Code Online (Sandbox Code Playgroud)

最后一个类样式定义是用class替换输入的边框validation.

但这远非完美:

  1. 边界"周长"的尺寸不同
  2. 如果我增加外边框的大小,我仍然会有一些模糊泄漏

巨型边框和模糊泄漏的例子

有没有更好的模糊文本的方法,而不是边界框?或者其他一些方法来掩盖模糊输入元素的副作用

html css css3

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

如何使用CSS构建多级菜单?

我的CSS有问题.我正在创建一个垂直菜单但我的问题是我不知道如何将第二级别的类别与第一级对齐.这也是从第二级到第三级的问题; 它也与父级别对齐.

我的格式是这样的:

Parent 1
   - Second Level 1
      - Third Level 1
      - Third Level 2
      - Third Level 3
Parent 2
   - Second Level 2
      - Third Level 1
      - Third Level 2
      - Third Level 3
Run Code Online (Sandbox Code Playgroud)

这是我想要的输出:

在此输入图像描述

这是我的CSS:

#category-navigation ul ul { display: none }
#category-navigation ul li:hover > ul { 
    display: inline-block;
    position: absolute;
    background-color: #F5F5F5;
    border: 1px solid #CCC;
    top: 20px;
    left: 15%;
    z-index: 4;
    width: 30%;
    box-shadow: 5px 5px 5px #CCC;
}

#category-navigation ul.parent …
Run Code Online (Sandbox Code Playgroud)

html css

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

如何使用react和material-ui让一个元素滑入而另一个元素滑出?

我有两个反应元素,包裹在幻灯片中:

    <div className={classes.wrapper}>
      <Switch
        checked={checked}
        onChange={this.handleChange}
        aria-label="Collapse"
      />
      <Slide
        direction="left"
        style={{ transitionDelay: !checked ? "10000ms" : "0ms" }}
        in={checked}
        timeout={1000}
        mountOnEnter
        unmountOnExit
      >
        <Paper elevation={4} className={classes.paper}>
          <svg className={classes.svg}>
            <polygon
              points="0,100 50,00, 100,100"
              className={classes.polygon}
            />
          </svg>
        </Paper>
      </Slide>
      <Slide
        direction="left"
        style={{ transitionDelay: checked ? "10000ms" : "0ms" }}
        in={!checked}
        timeout={1000}
        mountOnEnter
        unmountOnExit
      >
        <Paper elevation={4} className={classes.paper}>
          <svg className={classes.svg}>
            <polygon
              points="0,100 50,00, 100,100"
              className={classes.polygon2}
            />
          </svg>
        </Paper>
      </Slide>
    </div>
Run Code Online (Sandbox Code Playgroud)

完整代码见此处

我试图让一个元素在另一个元素之前离开,以便它们交换,但似乎这是不可能的?我尝试了超时和转换延迟的各种组合,但我无法让其中一个在另一个到达之前离开。

css-transitions reactjs reactcsstransitiongroup material-ui

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

如何在flutter中将参数插入到URL的中间?

我有一个 URL,其中 url 的参数插入到中间:

(即,q=Delhi, IN
https://samples.openweathermap.org/data/2.5/forecast?q= Delhi, IN&appid=b6907d289e10d714a6e88b30761fae22

现在,在flutter中,我想动态添加用户可以输入城市名称的参数,所以我的查询字符串是:

 var queryParameters = {
    'q': cityName
  };

var uri = Uri.http('samples.openweathermap.org', '/data/2.5/forecast?{}''&appid=b6907d289e10d714a6e88b30761fae22', queryParameters);
Run Code Online (Sandbox Code Playgroud)

但是当我执行这段代码时,我得到的查询字符串是

http://samples.openweathermap.org/data/2.5/forecast%7B%3F%7D&appid=b6907d289e10d714a6e88b30761fae22?q=delhi

我该如何解决?

url flutter

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