enter替换tab,,实现换行。。

图片说明
这个代码哪里有问题吗??
图片说明
alert也出来。就是event.which = 9; 不执行啊!!!!!!

图片说明

图片说明

6个回答

1、event.which不能修改,貌似没办法自动触发键盘事件
2、建议用keyup,用keydown的话,若一直按着按键不放会一直触发这个事件
可以用以下方法解决你的问题

 document.onkeyup = function(e) {
  e = e || window.event;
  if (e.keyCode == 13) {
      var index = Number(document.querySelector('input:focus').getAttribute('tabindex'));
      document.querySelector('input[tabindex="'+ (index+1) +'"]').focus();
  }
}
ning0_o
宁00 回复橙稚: 你用的什么浏览器?
接近 3 年之前 回复
qq_29878685
橙稚 麻烦帮我看一下被,,我这么写还是不执行
接近 3 年之前 回复

你的代码运行时有没有报错?你下面这段代码拷去试试呢

 <!doctype html>
<html lang="en">

  <head>
    <meta charset="UTF-8" />
    <title>Document</title>
  </head>

  <body>
    <table>
        <tr>
            <td><input type="text" tabindex="1"/></td>
            <td><input type="text" tabindex="3"/></td>
            <td><input type="text" tabindex="2"/></td>
        </tr>
    </table>
  </body>

  <script type="text/javascript">
    document.onkeyup = function(e) {
      e = e || window.event;
      if (e.keyCode == 13) {
          var index = Number(document.querySelector('input:focus').getAttribute('tabindex'));
          index = index == 3 ? 1 : (index + 1);
          document.querySelector('input[tabindex="'+ index +'"]').focus();
      }
    }
  </script>
</html>
qq_29878685
橙稚 在浏览器里,可以,但是一到项目上的网页,index的值获取不到,是0
接近 3 年之前 回复
<div id="JianCeRiZhi-dialog" class="easyui-dialog"
    style="width: 980; height: 660px; padding: 10px"
    data-options="modal:true,closed:true,
                    buttons:[{
                        text:'确定',
                        iconCls:'icon-ok',
                        handler:JianCeRiZhiFormPost
                    },{
                        text:'取消',
                        iconCls:'icon-cancel',
                        handler:function(){
                            $('#JianCeRiZhi-dialog').dialog('close');
                        }
                    }]">

    <form id="JianCeRiZhi_form" method="post" autocomplete="off">
        <table>
            <!-- <tr>
                <td style="float: left">区县:</td>
                <td style="float: left"><select id="JianCeRiZhi-combobox-qu"
                    class="easyui-combobox"
                    data-options="url:'JianCeGongZuoJiHua/Getjiancexinxi.action',
                                  method:'get',
                                  valueField:'quyu',
                                  textField:'quyu',
                                    editable:false,
                                    required:true,
                                  panelHeight:'auto',  
                                  onSelect:function(){       
                                   var varSelect = $('#JianCeRiZhi-combobox-qu').combobox('getText'); 
                                   if(varSelect = varSelect){
                                   $('#JianCeRiZhi-combobox-mingcheng').combobox('clear');  
                                $('#JianCeRiZhi-combobox-mingcheng').combobox('reload','JianCeRiZhi/GetJianCeMC.action?quyu='+varSelect);
                                   }  
                            }"
                    name="quxian" style="width: 180px;">
                </select></td>

                <td style="float: left">监测点名称:</td>
                <td style="float: left"><select
                    id="JianCeRiZhi-combobox-mingcheng" name="jiancedianmingcheng"
                    data-options="url:'JianCeRiZhi/GetJianCeMC.action',
                                  method:'get',
                                  valueField:'mingcheng',
                                  editable:false,
                                  required:true,
                                  textField:'mingcheng',
                                  panelHeight:'auto'"
                    class="easyui-combobox" style="width: 180px;"></select></td>

                <td style="float: left">填报时间:</td>
                <td style="float: left"><input
                    id="JianCeRiZhi-datebox-tianbaoshijian" name="tianbaoriqi"
                    readonly="readonly" style="width: 250px;"></td>
            </tr>
            <tr>
                <td style="float: left">是否延期:</td>
                <td style="float: left"><select
                    id="JianCeRiZhi-validatebox-SFYQ" class="easyui-combobox"
                    data-options="panelHeight:'50'" name="shifouyanqi"
                    style="width: 158px; listHeight: auto">
                        <option value="否">否</option>
                        <option value="是">是</option>
                </select></td>


                <td style="float: left">填报人:&nbsp;&nbsp;</td>
                <td style="float: left"><input
                    id="JianCeRiZhi-validatebox-tianbaoren" name="tianbaoren"
                    readonly="readonly" data-options="required:true"
                    style="width: 120px;"></td>
            </tr> -->
            <tr>
                <td style="float: left; color: red"><font>需要填报的数据表格如下:</font></td>
            </tr>
            <tr>
                <td>
                    <div data-options="fit:true,border:20" style="height: auto;">
                        <span style="font-family: Verdana; font-size: 14px;">
                            <table border="1" cellspacing="0" bordercolor="#99ccff">
                                <tr>
                                    <th colspan="1" width="100px" height="40px"></th>
                                    <th colspan="4" style="width: 400px; text-align: center;">城镇</th>
                                    <th colspan="2" style="width: 250px; text-align: center;">乡村</th>
                                    <th colspan="3" style="width: 380px; text-align: center;">合计</th>
                                    <th style="width: 200px; text-align: center;">备注</th>
                                </tr>
                                <tr height="40px">
                                    <th>&nbsp;&nbsp;</th>
                                    <th style="text-align: center;" colspan="2">男</th>
                                    <th style="text-align: center;" colspan="2">女</th>
                                    <th style="text-align: center;">男</th>
                                    <th style="text-align: center;">女</th>
                                    <th style="text-align: center;">男</th>
                                    <th style="text-align: center;">女</th>
                                    <th style="text-align: center;">合计</th>
                                    <th style="text-align: center;"></th>
                                </tr>
                                <tr height="40px">
                                    <th style="text-align: center;">组别</th>
                                    <th style="text-align: center;">城镇体力</th>
                                    <th style="text-align: center;">城镇非体力</th>
                                    <th style="text-align: center;">城镇体力</th>
                                    <th style="text-align: center;">城镇非体力</th>
                                    <th style="text-align: center;" colspan="2"></th>
                                    <th style="text-align: center;" colspan="3"></th>
                                    <th style="text-align: center;"></th>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">3岁</td>
                                    <td colspan="2"><input id="cnan3" tabindex="1" name="chengnan3"
                                        class="easyui-numberbox" 
                                        style="width: 202px; height: 36px; text-align: center"></td>
                                    <td colspan="2"><input id="cnv3" tabindex="2" name="chengnv3"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; text-align: center"></td>
                                    <td><input id="xnan3" tabindex="3" name="xiangnan3"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="xnv3" tabindex="4"name="xiangnv3"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="hnan3" tabindex="5" name="hejinan3" readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="hnv3" tabindex="6" name="hejinv3" readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="h33" tabindex="7" name="heji3" readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="3-8" tabindex="8" name="beizhu3"
                                        style="width: 200px; height: 30px;"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">4岁</td>
                                    <td colspan="2"><input id="cnan4" name="chengnan4"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td colspan="2"><input id="cnv4" name="chengnv4"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnan4" name="xiangnan4"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnv4" name="xiangnv4"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnan4" name="hejinan4" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnv4" name="hejinv4" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="h44" name="heji4" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="4-8" name="beizhu4"
                                        style="width: 200px; height: 30px; margin-left: 0px"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">5岁</td>
                                    <td colspan="2"><input id="cnan5" name="chengnan5"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td colspan="2"><input id="cnv5" name="chengnv5"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnan5" name="xiangnan5"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnv5" name="xiangnv5"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnan5" name="hejinan5" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnv5" name="hejinv5" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="h55" name="heji5" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="5-8" name="beizhu5"
                                        style="width: 200px; height: 30px; margin-left: 0px"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">6岁</td>
                                    <td colspan="2"><input id="cnan6" name="chengnan6"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td colspan="2"><input id="cnv6" name="chengnv6"
                                        class="easyui-numberbox"
                                        style="width: 202px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnan6" name="xiangnan6"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnv6" name="xiangnv6"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnan6" name="hejinan6" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnv6" name="hejinv6" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="h66" name="heji6" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="6-8" name="beizhu6"
                                        style="width: 200px; height: 30px; margin-left: 0px"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">20岁~29岁</td>
                                    <td><input id="cnanti20" name="chengnanti2029"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="cnanfei20" name="chengnanfei2029"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="cnvti20" name="chengnvti2029"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="cnvfei20" name="chengnvfei2029"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnan20" name="xiangnan2029"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="xnv20" name="xiangnv2029"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnan20" name="hejinan2029"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnv20" name="hejinv2029"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="h20" name="heji2029" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="20-10" name="beizhu2029"
                                        style="width: 200px; height: 30px; margin-left: 0px;"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">30岁~39岁</td>
                                    <td><input id="cnanti30" name="chengnanti3039"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnanfei30" name="chengnanfei3039"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvti30" name="chengnvti3039"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvfei30" name="chengnvfei3039"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="xnan30" name="xiangnan3039"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="xnv30" name="xiangnv3039"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="hnan30" name="hejinan3039"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnv30" name="hejinv3039"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="h30" name="heji3039" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="30" name="beizhu3039"
                                        style="width: 200px; height: 30px;"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">40岁~49岁</td>
                                    <td><input id="cnanti40" name="chengzhennanti4049"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnanfei40" name="chengzhennanfei4049"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvti40" name="chengzhennvti4049"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvfei40" name="chengzhennvfei4049"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="xnan40" name="xiangnan4049"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="xnv40" name="xiangnv4049"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="hnan40" name="hejinan4049"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="hnv40" name="hejinv4049"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="h40" name="heji4049" readonly="readonly"
                                        style="width: 160px; height: 30px; margin-left: 0px; text-align: center"></td>
                                    <td><input id="40" name="beizhu4049"
                                        style="width: 200px; height: 30px; margin-left: 0px;"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">50岁~59岁</td>
                                    <td><input id="cnanti50" name="chengzhennanti5059"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnanfei50" name="chengzhennanfei5059"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvti50" name="chengzhennvti5059"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvfei50" name="chengzhennvfei5059"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="xnan50" name="xiangnan5059"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="xnv50" name="xiangnv5059"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="hnan50" name="hejinan5059"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="hnv50" name="hejinv5059"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="h50" name="heji5059" readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="50" name="beizhu5059"
                                        style="width: 200px; height: 30px;"></td>
                                </tr>
                                <tr height="35px">
                                    <td style="text-align: center;">60岁~69岁</td>
                                    <td><input id="cnanti60" name="chengzhennanti6069"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnanfei60" name="chengzhennanfei6069"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvti60" name="chengzhennvti6069"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="cnvfei60" name="chengzhennvfei6069"
                                        class="easyui-numberbox"
                                        style="width: 100px; height: 36px; text-align: center"></td>
                                    <td><input id="xnan60" name="xiangnan6069"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="xnv60" name="xiangnv6069"
                                        class="easyui-numberbox"
                                        style="width: 125px; height: 36px; text-align: center"></td>
                                    <td><input id="hnan60" name="hejinan6069"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="hnv60" name="hejinv6069"
                                        readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="h60" name="heji6069" readonly="readonly"
                                        style="width: 160px; height: 30px; text-align: center"></td>
                                    <td><input id="60" name="beizhu6069"
                                        style="width: 200px; height: 30px; editable: false"></td>
                                </tr>
                            </table>
                        </span>
                    </div>
                </td>
            </tr>
        </table>
        <input id="JianCeRiZhi_editMode" name="mode" style="display: none" />
    </form>
</div>


<br> document.onkeyup = function(e) {<br> e = e || window.event;<br> if (e.keyCode == 13) {<br> alert(e.keyCode)<br> var index = Number(document.querySelector(&#39;input:focus&#39;).getAttribute(&#39;tabindex&#39;));<br> alert(index)<br> document.querySelector(&#39;input[tabindex=&quot;&#39;+ (index+1) +&#39;&quot;]&#39;).focus();<br> }<br> }</p>

图片说明
图片说明

我把你代码拷下来,能执行。没有任何问题,你换个浏览器试试

 document.onkeyup = function(e) {
    e = e || window.event;
    if (e.keyCode == 13) {
      var index = Number(document.querySelector('input:focus').getAttribute('tabindex'));

      document.querySelector('input[tabindex="'+ (index+1) +'"]').focus();
    }
  }
qq_29878685
橙稚 浏览器都行,就是到项目上不行,不知道为啥,总之还是要谢谢你。
接近 3 年之前 回复

虽然没解决你这个问题,但是我建议你的css样式不要直接写在标签上,很忌讳这样写

qq_29878685
橙稚 嗯嗯,谢谢提醒
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
js enter键调用tab键无效
向大家请问一下,我在mvc 中视图的文本框,设置其按enter 键调研tab ,自动跳到下个文本框控件,在ie8中都能正常,但是在ie10 下就按enter 键无效,没反应
大数据量导出csv文件后,打开csv文件时,出现换行问题,且换行的数据不是在Excel的第一列为什么,救急啊!老弟在线等!!!!!
导出一个大约200万的数据,使用csv导出,导出成功后使用Excel打开发现出现了换行问题,如下图所示,但是换行后的数据却不是在第一列,这是为什么。请大神指点一下!老弟在线等,项目要上线!!!这个有什么原因会造成他不是在第一列,换行的我把Tab键、enter键、空格都已经进行了转换。还有哪些原因会造成换行后数据不再第一列,大神指点一下啊! ![图片说明](https://img-ask.csdn.net/upload/201910/18/1571388842_40572.png)
屏蔽系统快捷键有什么方法可以屏蔽系统快捷键alt+enter?
有什么方法可以屏蔽系统快捷键alt+enter?有什么方法可以屏蔽系统快捷键alt+enter?
大一小白请教关于C 如何实现一些操作
1.printf函数如何实现按一下Enter出现一行 2.如何在其中可以自己打字(类似对话)再按enter 再出现下一行
Java编程思想 哲学家问题 为什么为哲学家增加思考的时间,就能缓解死锁的产生?
我十分不解,为什么在Philosopher类中的run()内增加pause()就能让死锁慢一点发生?请大神指教 这个例子中,产生死锁的原因在于,所有的哲学家都拿到了右筷子,却因为拿不到左筷子而陷入循环等待。但这和是否使用pause()有关系吗?可以注意到例子中使用的随机数赋予了种子,也就是说,每次运行得到的结果是一个固定且相同的值,即便是加了pause(),等待哪怕1000秒,当1000秒后,所有的哲学家仍然同时由等待状态转变成了可运行态,接着受到线程调度器分配时间片来驱动,这和等待时间的长短又有什么必然的关系呢???(ps: 我的理解是把种子去掉,不同的哲学家思考的时间不同,进入"拿筷子"阶段的时间不同,**降低同时请求共享资源的可能性**,这样倒是能缓解死锁发生的概率,书上的说法实在是无法理解) 请先避开不谈满足死锁的四个条件。直接讨论这个例子。 ``` /** * 哲学家问题 筷子 */ public class Chopstick { private boolean taken = false; public synchronized void take(int id, String direction) throws InterruptedException{ while(taken) { System.out.println("Philosopher " + id + " waiting " + direction + " chopstick"); this.wait(); } // 现在由新的哲学家持有这根筷子 taken = true; System.out.println("Philosopher " + id + " grabbed " + direction + " chopstick"); } public synchronized void drop() { taken = false; this.notifyAll(); } } ``` ``` /** * 哲学家问题 哲学家 */ public class Philosopher implements Runnable{ private Chopstick left; private Chopstick right; private final int id; private final int ponderFactor; private Random rand = new Random(47); private void pause() throws InterruptedException{ if(ponderFactor == 0) { return; } TimeUnit.MILLISECONDS.sleep(rand.nextInt(ponderFactor * 250)); } public Philosopher(Chopstick left, Chopstick right, int ident, int ponder) { this.left = left; this.right = right; this.id = ident; this.ponderFactor = ponder; } @Override public void run() { try { while(!Thread.interrupted()) { // 为什么加上的等待时间越长,产生死锁的可能性越小? pause(); //System.out.println(this + " beginning eating " + LocalDateTime.now().getNano()); // 哲学家开始变饿 System.out.println(this + " " + "grabbing right"); right.take(id, "right"); System.out.println(this + " " + "grabbing left"); left.take(id, "left"); System.out.println(this + " " + "eating"); pause(); right.drop(); left.drop(); } }catch (InterruptedException e) { System.out.println(this + " " + "exiting via interrupt"); } } public String toString() { return "Philosopher " + id; } } ``` ``` /** * 哲学家问题 演示死锁 */ public class DeadlockingDiningPhilosopher { public static void main(String[] args) throws InterruptedException, IOException { int ponder = 5; if(args.length > 0) { ponder = Integer.parseInt(args[0]); } int size = 5; if (args.length > 1) { size = Integer.parseInt(args[1]); } ExecutorService exec = Executors.newCachedThreadPool(); Chopstick[] sticks = new Chopstick[size]; for(int i = 0; i < size; i++) { sticks[i] = new Chopstick(); } for (int i = 0; i < size; i++) { exec.execute(new Philosopher(sticks[i], sticks[(i+1) % size], i, ponder)); } if (args.length == 3 && args[2].equals("timeout")) { TimeUnit.SECONDS.sleep(5); } else { System.out.println("Press 'Enter' to quit"); System.in.read(); } exec.shutdownNow(); } } ```
Tree Fence 围栏的问题
Problem Description XEN has a small yard. The yard is square and 1000*1000 large. The lower left corner has coordinates (0, 0), the upper right (1000, 1000). There are N trees in the yard. In order to protect them, XEN wants to fence some of them. XEN can only select some of the M positions which are provided in advance to insert wood piles, then he built fence along the inserted wood piles. Finally, the fence will be a polygon. As the picture below (Data is in the Sample): XEN should pay 47 yuan for each wood pile which were inserted. But he can get 173 yuan from each tree which is in the final polygon. Obviously,the income is the difference between the total money he get and the total money he pay. Now XEN want to know the maximum income he will get. But he doesn't know how to calculate it so that he asks your perfect team for help. Can you help him? Input Your program is to read from standard input. In the first line, there are two integer N, M (1 ≤ N, M ≤ 200), as the description means. The following lines are in the format: the former N lines are the locations of trees, the other M lines are for the M positions. In addition, there is a space between the two numbers of the same line. Tx1 Ty1 Tx2 Ty2 ... Txn Tyn Px1 Py1 Px2 Py2 ... PXm Pym (0 ≤ Txi, Tyi, Pxi, Pyi ≤ 1000, Integer!) Output Output an integer, the maximum income, in one line (enter is needed). Sample Input 3 4 400 300 600 500 800 900 800 300 200 200 200 700 600 700 Sample Output 205
Catch the Thief 的实现
Problem Description A thief stole a big diamond in a party. The diamond was in the door of the house. So everyone can tell if there is a diamond when he enter and exit the house. The cop think that the thief must be one of the guests. So they have got the timetable of the entrance time and exit time of everyone. They are arranging how to ask them to know who is the thief. When ask somebody, the cop could know if the diamond was still being there when they entering and exiting. Of course, thief will tell lie. To simplify the problem, the thief will always tell you that the diamond was there. To simplify the problem, we assume that the thief stole the diamond when he exit. The cop want to ask as few people as possible. Please help them to find the minimum number of guests they have to ask. Input The first line contains a single positive integer T( T <= 100 ), indicates the number of test cases. For each test case: First line contains an integer N(1<=N<=25), indicates the number of Guests The Timetable of the party - 2N numbers, 1-N each one twice, the first appearance means he enter. the second appearance means he exit. Output For each test case: output the case number as shown and the minimum number of guests they have to ask. Sample Input 4 1 1 1 2 1 1 2 2 4 1 1 2 2 3 3 4 4 5 1 4 4 2 5 5 3 3 2 1 Sample Output Case #1: 0 Case #2: 1 Case #3: 2 Case #4: 2
新手c#计算器窗体button和键盘双输入无法实现
尝试写一个c#Windows计算器的小程序,用按钮已经都能实现,但是当使用Ke'yDown的时用就按盘输入有问题。数字都没问题,但是enter(等号)和其他加减乘除有问题,请大神帮忙解答谢谢。 private void calculator_KeyDown_1(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { button11.PerformClick(); e.Handled = true; } if (e.KeyCode == Keys.NumPad0) { button16.PerformClick(); e.Handled = true; ... } } ``` 以上是我想用keydown的代码
C++哈夫曼编码译码器设计与实现并对哈夫曼树进行先序遍历。
现在就是差一个先序遍历的要求没有做到 ``` #include<stdio.h> #include<string.h> #include<stdlib.h> //树结点定义 typedef struct { int weight; int parent; int lchild; int rchild; }HTNode,*HuffmanTree; static char N[100];//用于保存正文 //哈弗曼编码,char型二级指针 typedef char **HuffmanCode; //封装最小权结点和次小权结点 typedef struct { int s1; int s2; }MinCode; //函数声明 void Error(char *message); HuffmanCode HuffmanCoding(HuffmanTree &HT,HuffmanCode HC,int *w,int n); MinCode Select(HuffmanTree HT,int n); //当输入1个结点时的错误提示 void Error(char *message) { fprintf(stderr,"Error:%s\n",message); //根据指定的格式,向输出流写入数据 exit(1); } //构造哈夫曼树HT,编码存放在HC中,w为权值,n为结点个数 HuffmanCode HuffmanCoding(HuffmanTree &HT,HuffmanCode HC,int *w,int n) { int i,s1=0,s2=0; HuffmanTree p; char *cd; int f,c,start,m; MinCode min; if(n<=1) { Error("Code too small!");//只有一个结点不进行编码,直接exit(1)退出。 } m=2*n-1;//哈弗曼编码需要开辟的结点大小为2n-1 HT=(HuffmanTree)malloc((m+1)*sizeof(HTNode));//开辟哈夫曼树结点空间 m+1 ,动态内存分配。 //初始化n个叶子结点,w[0] = 0,main函数已赋值 for(p=HT,i=0;i<=n;i++,p++,w++) { p->weight=*w; p->parent=0; p->lchild=0; p->rchild=0; } //将n-1个非叶子结点的初始化 for(;i<=m;i++,p++) { p->weight=0; p->parent=0; p->lchild=0; p->rchild=0; } //构造哈夫曼树 for(i=n+1;i<=m;i++) { min=Select(HT,i-1);//找出最小和次小的两个结点 s1=min.s1 ; //最小结点下标 s2=min.s2;//次小结点下标 HT[s1].parent=i; HT[s2].parent=i; HT[i].lchild=s1; HT[i].rchild=s2; HT[i].weight=HT[s1].weight+HT[s2].weight; } //打印哈弗曼树 printf("HT List:\n"); printf("Number\t\tweight\t\tparent\t\tlchild\t\trchild\n"); for(i=1;i<=m;i++) { printf("%d\t\t%d\t\t%d\t\t%d\t\t%d\t\n",i,HT[i].weight,HT[i].parent,HT[i].lchild,HT[i].rchild); } //从叶子结点到根节点求每个字符的哈弗曼编码 HC=(HuffmanCode)malloc((n+1)*sizeof(char *)); cd=(char *)malloc(n*sizeof(char *));//为哈弗曼编码动态分配空间 cd[n-1]='\0';//如:3个结点编码最长为2。cd[3-1] = '\0'; //求叶子结点的哈弗曼编码 for(i=1;i<=n;i++) { start=n-1; //定义左子树为0,右子树为1 /* 从最下面的1号节点开始往顶部编码(逆序存放),然后编码2号节点,3号...... */ for(c=i,f=HT[i].parent; f!=0; c=f,f=HT[f].parent) { if(HT[f].lchild==c) cd[--start]='0'; else cd[--start]='1'; } //为第i个字符分配编码空间 HC[i]=(char *)malloc((n-start)*sizeof(char *)); //将当前求出结点的哈弗曼编码复制到HC strcpy(HC[i],&cd[start]); } free(cd); return HC; } MinCode Select(HuffmanTree HT,int n) { int min,secmin; int temp = 0; int i,s1,s2,tempi = 0; MinCode code ; s1=1; s2=1; min = 9999; //找出权值最小的结点,下标保存在s1中 for(i=1;i<=n;i++) { if(HT[i].weight<min && HT[i].parent==0) { min=HT[i].weight; s1=i; } } secmin = 9999; //找出权值次小的结点,下标保存在s2中 for(i=1;i<=n;i++) { if((HT[i].weight<secmin) && (i!=s1) && HT[i].parent==0) { secmin=HT[i].weight; s2=i; } } //放进封装中 code.s1=s1; code.s2=s2; return code; } void HuffmanTranslateCoding(HuffmanTree HT, int n,char* ch) {//译码过程 int m=2*n-1; int i,j=0; printf("After Translation:"); while(ch[j]!='\0')//ch[]:你输入的要译码的0101010串 { i=m; while(0 != HT[i].lchild && 0 != HT[i].rchild)//从顶部找到最下面 { if('0' == ch[j])//0 往左子树走 { i=HT[i].lchild; } else//1 往右子树走 { i=HT[i].rchild; } ++j;//下一个路径 } printf("%c",N[i-1]);//打印出来 } printf("\n"); } void main() { HuffmanTree HT=NULL; HuffmanCode HC=NULL; int *w=NULL; int i,n; char tran[100]; printf("Input N(char):"); gets(N); fflush(stdin); n = strlen(N); w=(int *)malloc((n+1)*sizeof(int *));//开辟n+1个长度的int指针空间 w[0]=0; printf("Enter weight:\n"); //输入结点权值 for(i=1;i<=n;i++) { printf("w[%d]=",i); scanf("%d",&w[i]); } fflush(stdin); //清空输入缓冲区 //构造哈夫曼树HT,编码存放在HC中,w为权值,n为结点个数 HC=HuffmanCoding(HT,HC,w,n); //输出哈弗曼编码 printf("HuffmanCode:\n"); printf("Number\t\tWeight\t\tCode\n"); for(i=1;i<=n;i++) { printf("%c\t\t%d\t\t%s\n",N[i-1],w[i],HC[i]); } fflush(stdin); //译码过程 printf("Input HuffmanTranslateCoding:"); gets(tran); HuffmanTranslateCoding(HT, n, tran); return; } ```题目要求:九、哈夫曼编码译码器设计与实现 编写程序设计哈夫曼编码译码器。 (1)根据输入的权值建立哈夫曼树。 (2)对建立好的哈夫曼树进行先序遍历。 (3)利用建好的哈夫曼树生成哈夫曼编码,并显示生成的各字符的哈夫曼编码。 (4)根据输入的字符进行译码。 (5)显示功能:以先序遍历的顺序显示建立好的哈夫曼树。显示哈夫曼编码和译码的结果。
java 问题,新手编程,如何用enter键来终止游戏程序
新手编程,我被要求写一个剪刀石头布游戏,我写出来了,但是要求说,你将会一直玩下去直到你点击enter键 我不知道如何输入enter键,有没有一个while loop之类的
C# Winform项目中,如何实现响应键盘的Tab键以及键盘的回车键
C# Winform项目中,有个form窗体,在form窗体中有一个Panel控件, 在Panel控件中包函六个Label控件(label1、label2、label3、label4、label5、label6),这六个Label控件从上到下排成一列。 如何实现以下两个功能: 1、如何实现通过点击键盘的Tab键可以实现从上到下的依次移动选择六个Lable控件。 2、在选中对应的Label控件后,如何实现点击键盘的回车键(Enter键)后,可以执行Label控件相应的Click事件。 请问实现上面的两个功能 ,有没有相关完整的参考资料或源码。谢谢!
列表元素怎么指定删除
做一个学生信息查询系统,输入信息之后,选择修改信息,总成绩all是用列表做的,我想的是列表可以用sort函数直接排序,字典不行,但是不会删除修改之前的总成绩, 也就是修改之前的成绩和修改后的成绩并存了。想知道怎么删除之前的成绩 ``` class student(object):#定义学生类 def __init__(self): self.student={} self.all=[] self.name=[] self.ID={} self.chinese={} self.math={} self.english={} self.sports={} self.scores={} def input(self):#录入学生信息 """录入学生姓名以及成绩""" student_name=input("Please enter student's name:") student_ID=input("Please enter student ID:") chinese_grade=input("Please enter student's Chinses grade:") math_grade=input("Please enter student's Math grade:") english_grade=input("Please enter student's english grede:") sports_grade=input("Please enter student's sport grade:") scores=int(chinese_grade)+int(math_grade)+int(english_grade)+int(sports_grade)#计算总分 print("total score is:",int(scores)) """将输入的信息储存""" self.student[student_name]=student_name self.ID[student_name]=student_ID self.chinese[student_name]=chinese_grade self.math[student_name]=math_grade self.english[student_name]=english_grade self.sports[student_name]=sports_grade self.scores[student_name]=scores self.all.append(scores) self.name.append(student_name) def inquire(self):#查询学生信息 byname=input("Please enter student's name you inquire:") """显示学生的信息""" print("student name:",self.student[byname]) print("student ID",self.ID[byname]) print("Chinese grade:",self.chinese[byname]) print("Math grade:",self.math[byname]) print("english grade:",self.english[byname]) print("Sports grade:",self.sports[byname]) print("Total score:",self.scores[byname]) def sort_scores(self):#将学生成绩进行排序 i=1 for a in range(0,len(self.all)): for b in range(a,len(self.all)): if self.total[a]<self.total[b]: self.name[a],self.name[b]=self.name[b],self.name[a] else: self.name[a],self[b]=self.name[a],self.name[b] for c in range(0,len(self.name)): print(i ,",",self.name[c],"\n") i+=1 def sort_all(self):#将学生总成绩排序 self.all.sort() print("student total grades sort from small to large") print(self.all) def modify(self):#修改学生信息 gename=input("Please enter student'name you modify:") student_ID=input("Please enter new student ID:") chinese_grade=input("Please enter new student's Chinses grade:") math_grade=input("Please enter new student's Math grade:") english_grade=input("Please enter new student's english grede:") sports_grade=input("Please enter new student's sport grade:") scores=int(chinese_grade)+int(math_grade)+int(english_grade)+int(sports_grade)#计算总分 print("total score modified is:",int(scores)) """将输入的信息储存""" self.ID[gename]=student_ID self.chinese[gename]=chinese_grade self.math[gename]=math_grade self.english[gename]=english_grade self.sports[gename]=sports_grade self.scores[gename]=scores self.all.append(scores) def do(self): print("="*10,"Welcome to use Student information inquiry system","="*10) print("Choose 1 to enter student information") print("Choose 2 to inquire student information") print("Choose 3 to modify student information") print("Choose 4 to rank student's total scores") print("Choose 5 to rank student's scores") print("Choose 6 to sign out") while True: order=int(input("Please enter your chosen number:")) if order==1: self.input() elif order==2: self.inquire() elif order==3: self.modify() elif order==4: self.sort_all() elif order==5: self.sort_name() start=student() start.do() ``` 运行图片![图片说明](https://img-ask.csdn.net/upload/201912/22/1577006665_127793.png) 请大佬帮忙看看,谢谢。
联想B590试了网上所有的办法包括 f1,f2,fn+f1,fn+f2,del,enter,esc,tab,按novo建都不能进入bios界面
联想B590试了网上所有的办法包括 f1,f2,fn+f1,fn+f2,del,enter,esc,tab,按novo建都不能进入bios界面,希望大神能帮忙解决下,在线等!!!
Delta-wave 程序设计
Problem Description A triangle field is numbered with successive integers in the way shown on the picture below. The traveller needs to go from the cell with number M to the cell with number N. The traveller is able to enter the cell through cell edges only, he can not travel from cell to cell through vertices. The number of edges the traveller passes makes the length of the traveller's route. Write the program to determine the length of the shortest route connecting cells with numbers N and M. Input Input contains two integer numbers M and N in the range from 1 to 1000000000 separated with space(s). Output Output should contain the length of the shortest route. Sample Input 6 12 Sample Output 3
jupyter notebook 为什么使用shift enter后自动进入命令模式而不是编辑模式
不知道是我不小心设置了什么,jupyter notebook中输入代码时, 无论是用shift enter还是alt enter都是运行这一行并选择下一行然后自动 进入命令模式,即按了shift enter后需要再按一次enter才能开始在下一行输入, 应该怎么调整回来呢?
Treasure of the Chimp Island
Problem Description Bob Bennett, the young adventurer, has found the map to the treasure of the Chimp Island, where the ghost zombie pirate LeChimp, the infamous evil pirate of the Caribbeans has hidden somewhere inside the Zimbu Memorial Monument (ZM2). ZM2 is made up of a number of corridors forming a maze. To protect the treasure, LeChimp has placed a number of stone blocks inside the corridors to block the way to the treasure. The map shows the hardness of each stone block which determines how long it takes to destroy the block. ZM2 has a number of gates on the boundary from which Bob can enter the corridors. Fortunately, there may be a pack of dynamites at some gates, so that if Bob enters from such a gate, he may take the pack with him. Each pack has a number of dynamites that can be used to destroy the stone blocks in a much shorter time. Once entered, Bob cannot exit ZM2 and enter again, nor can he walk on the area of other gates (so, he cannot pick more than one pack of dynamites). The hardness of the stone blocks is an integer between 1 and 9, showing the number of days required to destroy the block. We neglect the time required to travel inside the corridors. Using a dynamite, Bob can destroy a block almost immediately, so we can ignore the time required for it too. The problem is to find the minimum time at which Bob can reach the treasure. He may choose any gate he wants to enter ZM2. Input The input consists of multiple test cases. Each test case contains the map of ZM2 viewed from the above. The map is a rectangular matrix of characters. Bob can move in four directions up, down, left, and right, but cannot move diagonally. He cannot enter a location shown by asterisk characters (*), even using all his dynamites! The character ($) shows the location of the treasure. A digit character (between 1 and 9) shows a stone block of hardness equal to the value of the digit. A hash sign (#) which can appear only on the boundary of the map indicates a gate without a dynamite pack. An uppercase letter on the boundary shows a gate with a pack of dynamites. The letter A shows there is one dynamite in the pack, B shows there are two dynamite in the pack and so on. All other characters on the boundary of the map are asterisks. Corridors are indicated by dots (.). There is a blank line after each test case. The width and the height of the map are at least 3 and at most 100 characters. The last line of the input contains two dash characters (--). Output For each test case, write a single line containing a number showing the minimum number of days it takes Bob to reach the treasure, if possible. If the treasure is unreachable, write IMPOSSIBLE. Sample Input *****#********* *.1....4..$...* *..***..2.....* *..2..*****..2* *..3..******37A *****9..56....* *.....******..* ***CA********** ***** *$3** *.2** ***#* -- Sample Output 1 IMPOSSIBLE
Delta-wave 的设计问题
Problem Description A triangle field is numbered with successive integers in the way shown on the picture below. The traveller needs to go from the cell with number M to the cell with number N. The traveller is able to enter the cell through cell edges only, he can not travel from cell to cell through vertices. The number of edges the traveller passes makes the length of the traveller's route. Write the program to determine the length of the shortest route connecting cells with numbers N and M. Input Input contains two integer numbers M and N in the range from 1 to 1000000000 separated with space(s). Output Output should contain the length of the shortest route. Sample Input 6 12 Sample Output 3
VC++6.0 安装助手后,tab,enter快捷键无法使用,
![图片说明](https://img-ask.csdn.net/upload/201412/26/1419558222_637543.png) 按tab键或Enter键是可以自动填充的,现在不行了怎么办, ![图片说明](https://img-ask.csdn.net/upload/201412/26/1419558293_894564.png) ![图片说明](https://img-ask.csdn.net/upload/201412/26/1419558307_644693.png) 很多地方都设置了还是不管用,求高手解答啊。。。
Eliminate Witches! 怎么来写呢
Problem Description Kaname Madoka is a Magical Girl(Mahou Shoujo/Puella Magi). The duty of a Magical Girl is to eliminate Witches(Majo). Though sounds horrific, it is not a hard job for her as a powerful magical girl. One day Madoka is eliminating Witches as usual. This time she is facing a maze full of Witches. The maze consists of rooms, each lives exactly one Witch. And there is exactly one path from one room to another. So you see, the maze can be represented as a tree, with rooms regarded as nodes on the tree. Madoka eliminates Witches according to the following rules: 1. At first, Madoka enters the root node room of the maze. 2. If the room Madoka enters lives a Witch, Madoka will eliminate it at once, and the Witch disappear. 3. If the room has child node rooms with Witches, Madoka will choose the leftmost one and enter it. 4. Madoka won't go back to the parent node room of a room X until Witches living in child node rooms of X are all eliminated. See the figure below for details about a sample maze. The numbers inside nodes indicate the order of elimination of the corresponding Witches, the strings below nodes are names of Witches, and the arrow shows the tracks Madoka travels: After finishes her task, Madoka just make a brief log like this: "walpurgis(charlotte(patricia,gertrud),elly,gisela)" which represents the tree-like maze identifying rooms by the names of Witches living in them. Akemi Homura, a classmate of Madoka, also a Magical Girl, is a mad fan of her. She wants to take detailed notes of everything Madoka do! Apparently the log Madoka made is hard to read, so Homura decide to make a new one of her own. The new log should contain the following information: 1. The number of rooms of the maze 2. Names of Witches in all rooms. 3. The tracks Madoka travels. (represented by the number identifying the node) So the new log should be like this: 6 walpurgis charlotte patricia gertrud elly gisela 1 2 2 3 3 2 2 4 4 2 2 1 1 5 5 1 1 6 6 1 However, the maze may be very large, so Homura nees a program to help her. Input The first line contains an integer T(T<=20), indicating the number of test cases. For each case there is only one string on a line, Madoka's log. It is guaranteed that the maze consists of at most 50000 rooms, and the names of Witches is a string consists of at most 10 lowercase characters, while the string of Madoka's log consists of at most 1000000 characters, which are lowercase characters, '(', ')' or ','. Output For each case, you should output the detailed log. The first line an integer N, the number of rooms of the maze. The following N lines, each line a string, the name of the Witches, in the order of elimination. The following 2(N-1) lines, each line two integers, the number of two nodes indicating the path Madoka passes. Output a blank line after each case. Sample Input 3 walpurgis(charlotte(patricia,gertrud),elly,gisela) wuzetian nanoha(fate(hayate)) Sample Output 6 walpurgis charlotte patricia gertrud elly gisela 1 2 2 3 3 2 2 4 4 2 2 1 1 5 5 1 1 6 6 1 1 wuzetian 3 nanoha fate hayate 1 2 2 3 3 2 2 1
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
花了20分钟,给女朋友们写了一个web版群聊程序
参考博客 [1]https://www.byteslounge.com/tutorials/java-ee-html5-websocket-example
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
开源一个功能完整的SpringBoot项目框架
福利来了,给大家带来一个福利。 最近想了解一下有关Spring Boot的开源项目,看了很多开源的框架,大多是一些demo或者是一个未成形的项目,基本功能都不完整,尤其是用户权限和菜单方面几乎没有完整的。 想到我之前做的框架,里面通用模块有:用户模块,权限模块,菜单模块,功能模块也齐全了,每一个功能都是完整的。 打算把这个框架分享出来,供大家使用和学习。 为什么用框架? 框架可以学习整体
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch
深深的码丨Java HashMap 透析
HashMap 相关概念 HashTab、HashMap、TreeMap 均以键值对像是存储或操作数据元素。HashTab继承自Dictionary,HashMap、TreeMap继承自AbstractMap,三者均实现Map接口 **HashTab:**同步哈希表,不支持null键或值,因为同步导致性能影响,很少被使用 **HashMap:**应用较多的非同步哈希表,支持null键或值,是键值对...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
JDK12 Collectors.teeing 你真的需要了解一下
前言 在 Java 12 里面有个非常好用但在官方 JEP 没有公布的功能,因为它只是 Collector 中的一个小改动,它的作用是 merge 两个 collector 的结果,这句话显得很抽象,老规矩,我们先来看个图(这真是一个不和谐的图????): 管道改造经常会用这个小东西,通常我们叫它「三通」,它的主要作用就是将 downstream1 和 downstre...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
相关热词 c# clr dll c# 如何orm c# 固定大小的字符数组 c#框架设计 c# 删除数据库 c# 中文文字 图片转 c# 成员属性 接口 c#如何将程序封装 16进制负数转换 c# c#练手项目
立即提问

相似问题

0
D3力导引图中功能实现与json数据的调用*(程序代码很多是套用的,希望给出代码指点)
1
pb如何使用代码向一个文本框发送一个enter键的消息
1
Java 通过Enter键控制输入字符
1
D3.JS中树状图的连线样式
2
安卓系统接入扫码枪,扫描内容后屏蔽焦点到下一个控件
1
C++中有关输入流的问题:在输入过程中空格键和enter键的作用?为什么这样?还请大神帮忙分析
0
EXT中ENTER快捷键进入下一个输入框问题
3
default boot device missing or boot failed
3
C# button 点击改变背景颜色 怎么给初始化button使颜色处于点击前的状态
0
LNK2019 无法解析的外部符号 找不出错误,求大神指导
2
bootstrap 前端怎么设置 Enter 键登录系统
0
元素“enter”不是已知元素。原因可能是网站中存在编译错误,或者缺少 web.config 文件。
3
VMware14安装系统时,按enter键没反应。。。。。。
3
程序中使用的if(i>=2)的语句为什么不能使cin.get()读取换行符呢?
6
为什么相同的程序在vs2017 和dev c++中跑出的结果不一样
6
初学者在C程序设计现代方法中遇到题目。请各位看下哪里的问题
5
EXCEL中使用VB语言写程序,调用函数时参数传递的问题
3
检查回文。用指针的运算替换数组下标追踪数组的位置
5
检查回文,用指针运算替换数组下标追踪数组位置
2
引发的异常: 0xC0000005: 写入位置 0xCDCDCDCD 时发生访问冲突。