《JavaWeb开发-javascript基础》

文章目录

  • 《JavaWeb开发-javascript基础》
    • 1.javascript 引入方式
    • 2.JS-基础语法-书写语法
      • 2.1 书写语法
      • 2.2 输出语句
    • 3.JS-基础语法-变量
    • 4.JS-基础语法-数据类型&运算符
      • 4.1 数据类型
      • 4.2 运算符
      • 4.3 数据类型转换
    • 5. JS-函数
    • 6. JS-对象-Array数组
    • 7. JS-对象-String字符串
    • 8. JS-对象-JSON
    • 9. JS-对象-BOM
    • 10. JS-对象-DOM
    • 11. JS-对象-DOM-案例
    • 12. JS-事件-事件绑定&常见事件
    • 13. JS-事件-案例

《JavaWeb开发-javascript基础》


1.javascript 引入方式

  • 内部脚本:将JS代码定义在HTML页面中。

    • JavaScript代码必须位于标签之间。
    • 在HTML文档中,可以在任意地方,放置任意数量的<script>。
    • 一般会把脚本置于元素的底部,可改善显示速度。
    <script>alert("Hello javaScript")
    </script>
    
  • 外部脚本:将JS代码定义在外部JS文件中,然后引入到 HTML页面中。

    • 外部JS文件中,只包含JS代码,不包含<script>标签。
      <script>标签不能自闭合。
    <script src="is/demo.js"></script>
    
    alert("Hello JavaScript")  //保存为demo.js文件
    

2.JS-基础语法-书写语法

2.1 书写语法

  • 区分大小写:与Java 一样,变量名、函数名以及其他一切东西都是区分大小写的。
  • 每行结尾的分号可有可无。
  • 注释:
    • 单行注释: // 注释内容
    • 多行注释: /* 注释内容 */
  • 大括号表示代码块。
    //判断
    if(count == 3){alert(count);
    }
    

2.2 输出语句

  1. 使用 window.alert()写入警告框

  2. 使用 document.write()写入 HTML输出

  3. 使用 console.log()写入浏览器控制台

    <script>
    window.alert("Hello JavaScript");//浏览器弹出警告框
    document.write("Hello JavaScript");//写入HTML,在浏览器展示
    console.log("Hello Javascript");//写入浏览器控制台
    </script>
    

3.JS-基础语法-变量

  1. JavaScript 中用 var 关键字(variable 的缩写)来声明变量。

  2. JavaScript 是一门弱类型语言,变量可以存放不同类型的值。

    var a= 20;
    a="张三";
    
  3. 变量名需要遵循如下规则:

    • 组成字符可以是任何字母、数字、下划线()或美元符号(S)
    • 数字不能开头
    • 建议使用驼峰命名
    • 注意事项
      • ECMAScript6 新增了let 关键字来定义变量。它的用法类似于 var,但是所声明的变量,只在 let 关键字所在的代码块内有效,且不允许重复声明。
      • ECMAScript6 新增了 const 键字,用来声明一个只读的常量。一旦声明,常量的值就不能改变。

4.JS-基础语法-数据类型&运算符

4.1 数据类型

  • JavaScript中分为:原始类型和引用类型
  • 原始类型:
    • number:数字(整数、小数、NaN(Not aNumber))
    • string:字符串,单双引皆可
    • boolean:布尔。true,false
    • null:对象为空
    • undefined:当声明的变量未初始化时,该变量的默认值是 undefined
    • 使用 typeof 运算符可以获取数据类型
    var a=20;
    alert(typeof a);
    

4.2 运算符

  • 算术运算符:+,-,*,/,%,++,--赋值运算符:=,+=,-=,*=,/=,%=

  • 比较运算符:>,<,>=,<=,!=,== , ===

  • 逻辑运算符:&&,|| , !

  • 三元运算符:条供表达式 ? true value : false value

  • ==会进行类型转换,===不会进行类型转换

    var a =10:
    alert(a == "10"); //true
    alert(a ==="10");//false
    alert(a === 10);//true
    

4.3 数据类型转换

  • 字符串类型转为数字
    • 将字符串字面值转为数字。如果字面值不是数字,则转为NaN。
  • 其他类型转为boolean:
    • Number:0和NaN为false,其他均转为true。
    • String:空字符串为false,其他均转为true。
    • Null和 undefined:均转为false。

5. JS-函数

  • 介绍:函数(方法)是被设计为执行特定任务的代码块。

  • 定义:avaScript 函数通过 function 关键字进行定义,

  • 语法为:

    function functionName(参数1,参数2..){
    //要执行的代码}
    
  • 定义(举例):

    function add(a,b){return a+b;
    }
    
  • 注意

    • 形式参数不需要类型。因为JavaScript是弱类型语言
    • 返回值也不需要定义类型,可以在函数内部直接使用return返回即可
  • 调用:函数名称(实际参数列表)

    var result=add(10,20);
    alert(result);
    
  • 定义方法二:var functionName =function(参数1,参数2..){//要执行的代码}

    var add = function(a,b){return a+b;
    }
    

6. JS-对象-Array数组

  • javascript中Array对象用于定义数组

  • 定义

    • 定义方式一:var 变量名 = new Array(数组列表); var arr = new Array(1,2,3,4);
    • 定义方法二:var 变量名 = [元素列表]; arr list = [1,2,3,4];
  • 调用:arr[索引] = 值; arr[10] = Hello;

  • 注意事项
    JavaScript 中的数组相当于Java 中集合,数组的长度是可变的,而JavaScript是弱类型,所以可以存储任意的类型的数据。

  • 属性

    • length:设置或返回数组中元素的数量。
          <script>var arr = new Array(1,2,3,4,5,6);for (let i = 0; i < arr.length; i++) {console.log(arr[i]);}</script>
      
  • 方法

    • forEach():遍历数组中的每个有值的元素,并调用一次传入的函数
      <script>var arr = new Array(1,2,3,4,5,6);arr[10] = 50;// for循环可以遍历数组中的每一个元素for (let i = 0; i < arr.length; i++) {console.log(arr[i]);}console.log("====================");//forEach循环只遍历数组有值的元素arr.forEach(function (e) {console.log(e); })// 使用“箭头函数”可以对forEach中的函数进行优化arr.forEach((e) => {console.log(e);})
      </script>
      
  • push():将新元素添加到数组的末尾,并返回新的长度。

  • splice():从数组中删除元素。

        <script>var arr = new Array(1,2,3,4,5,6);arr[10] = 50;// 在数组的尾部添加元素arr.push(7,8,9);console.log(arr);// [1, 2, 3, 4, 5, 6, empty × 4, 50, 7, 8, 9]//从数组中删除元素arr.splice(2,2);console.log(arr);//[1, 2, 5, 6, empty × 4, 50, 7, 8, 9]</script>
    

7. JS-对象-String字符串

  • String字符串对象创建方式有两种:
  • var 变量名 = new String("..”); //方式一 var str = new String("Hello String");
  • var 变量名 = "…"; //方式二 var str = "Hello String" 或 var str = ‘Hello String’;
  • 属性
    • length:字符串的长度。
  • 方法:
    • charAt():返回在指定位置的字符,
    • indexof():检索字符串。
    • trim():去除字符串两边的空格
    • substring():提取字符串中两个指定的索引号之间的字符;
        <script>// 创建字符串对象// var str = new String("Hello String"); //方式一var str = "Hello String"; //方式二console.log(str);//length 属性console.log(str.length);  //12//charAt()方法console.log(str.charAt(4)); //o//indexOf()方法console.log(str.indexOf("t")); //7//trim()方法console.log(str.trim());//去除字符串两边的空格//substring()方法console.log(str.substring(0,5)); //hello</script>
    

8. JS-对象-JSON

  • JavaScript自定义对象

    定义格式:
    var 对象名 = {属性名1:属性值1,属性名2:属性值2,属性名3:属性值3函数名称:function(形参列表){}};
    
  • 调用格式:

    • 对象名.属性名; console.log(user.name);
    • 对象名.函数名(); user.eat();
  • 自定义对象中的函数写法可以进行简化

    定义格式:
    var 对象名 = {属性名1:属性值1,属性名2:属性值2,属性名3:属性值3函数名称(形参列表){}  //简化后};
    
        <script>// JavaScript自定义对象的定义// var user = {//     name:"Tom",//     age:18,//     gender:"male",//     eat: function(){//         alert("吃饭");//     }// };// 对函数写法简化后代码var user = {name:"Tom",age:18,gender:"male",eat(){alert("吃饭");}};//JavaScript自定义对象的调用alert(user.name);user.eat();</script>
    
  • JSON-介绍

    • JSON概念:JavaScript Object Notation,javaScript对象标记法。
    • JSON 是通过JavaScript 对象标记法书写的文本。
    • 由于其语法简单,层次结构鲜明,现多用于作为数据载体,在网络中进行数据传输。
    • JavaScript 对象写法
      {name:"Tom"age:20,gender:"male"
      }
    • JOSN文本写法
      {"name":"Tom""age":20,"gender" :"male"
      
      }
  • JSON基础语法

    • 定义:var 变量名={"key1":value1,"key2":value2}

    • value 的数据类型为:

      • 数字(整数或浮点数)
      • 字符串(在双引号中)
      • 逻辑值(true 或 false)
      • 数组(在方括号中)
      • 对象(在花括号中)
      • nul
    • 示例:var userstr ='{"name":"Jerry","age":18,"addr":["北京”,"上海","西安"]}';

    • JSON字符串转为JS对象
      var jsobject = JSON.parse(userstr);

    • JS对象转为JSON字符串
      var jsonStr =JSON.stringify(jsobject);

          <script>//定义一个JSON字符串var userstr = '{"name":"Jerry","age":18,"add":["北京","上海","西安"]}';alert(userstr.name);//JSON字符串转为JS对象var jsObject = JSON.parse(userstr);alert(jsObject.name);// JS对象转为JSON字符串var jsonStr = JSON.stringify(jsObject);alert(jsonStr);</script>
      

9. JS-对象-BOM

  • 概念:Browser 0bject Model 浏览器对象模型,允许|avaScript与浏览器对话,JavaScript 将浏览器的各个组成部分封装为对象。
  • 组成:
    • Window:浏览器窗口对象
    • Navigator:浏览器对象
    • Screen:屏幕对象
    • History:历史记录对象
    • Location:地址栏对象
  • Window:浏览器窗口对象
    • 介绍:浏览器窗口对象。
    • 获取:直接使用window,其中 window.可以省略。
      • window.alert("Hello Window");
      • alert("Hello window");
  • 属性
    • history:对 History 对象的只读引用。请参阅 History 对象。
    • location:用于窗口或框架的 Location 对象。请参阅 Location 对象。
    • navigator:对 Navigator 对象的只读引用。请参阅Navigator 对象。
  • 方法
    • alert():显示带有一段消息和一个确认按钮的警告框。
    • confirm():显示带有一段消息以及确认按钮和取消按钮的对话框。
    • setInterval():按照指定的周期(以毫秒计)来调用函数或计算表达式。
    • setTimeout():在指定的毫秒数后调用函数或计算表达式。
        <script>// 1.方法alert():显示带有一段消息和一个确认按钮的警告框。window.alert("警告框");//可以省略window//2.方法confirm():显示带有一段消息以及确认按钮和取消按钮的对话框。var flag = window.confirm("确认要删除这条记录吗?");console.log(flag);//3.方法setInterval():按照指定的周期(以毫秒计)来调用函数或计算表达式。var count = 0;window.setInterval(function(){count++;console.log("定时器执行了" + count + "次");},2000);//4.方法setTimeout():在指定的毫秒数后调用函数或计算表达式。window.setTimeout(function () {alert("JS")},3000)</script>
    
  • Location:地址栏对象
    • 介绍:地址栏对象。
    • 获取:使用 window.location 获取,其中 window.可以省略,
      • window.location.属性;
      • location.属性;
  • 属性:
    • href:设置或返回完整的URL。
    • location.href="https://www.itcast.cn";
        <script>//获取当前浏览器的地址alert(location.href);//设置地址栏的urllocation.href = "https://www.itcast.cn";</script>
    

10. JS-对象-DOM

  • DOM概念:Document Object Model,文档对象模型
  • 将标记语言的各个组成部分封装为对应的对象
    • Document:整个文档对象
    • Element:元素对象
    • Attribute:属性对象
    • Text:文本对象
    • Comment:注释对象
  • JavaScript 通过DOM,就能够对HTML进行操作
    • 改变 HTML 元素的内容
    • 改变 HTML元素的样式(CSS)
    • HTML DOM 事件作出反应
    • 添加和删除 HTML 元素
  • DOM是 W3C(万维网联盟)的标准,定义了访问HTML和XML文档的标准,分为3个不同的部分
    1. Core DOM-所有文档类型的标准模型
      • Document:整个文档对象
      • Element:元素对象
      • Attribute:属性对象
      • Text:文本对象
      • Comment:注释对象
    2. XML DOM-XML 文档的标准模型
    3. HTMLDOM-HTML文档的标准模型
      • Image: <img>
      • Rutton : <input type='button'>
  • HTML中的Element对象可以通过Document对象获取,而Document对象是通过window对象获取的
  • Document对象中提供了以下获取Element元素对象的函数:
    • 根据id属性值获取,返回单个Element对象
      var h1 = document.getElementById('h1');
    • 根据标签名称获取,返回Element对象数组
      var divs = document.getElementsByTagName('div');
    • 根据name属性值获取,返回Element对象数组
      var hobbys = document.getElementsByName('hobby');
    • 根据class属性值获取,返回Element对象数组4
      var clss= document.getElementsByClassName('cls');
        <script>//1 获取Element元素//1.2 获取元素-根据ID获取var img = document.getElementById('h1');alert(img);//1.2获取元素-根据标签获取var divs = document.getElementsByTagName('div');for (let i = 0; i< divs.length; i++) {alert(divs[i]);}//1.3获取元素-根据name属性获取var inputs = document.getElementsByName('hobby');for (let i = 0; i < inputs.length; i++) {alert(inputs[i]);            }//1.4获取元素-根据class属性获取var inputs1 = document.getElementsByClassName('cls');for (let i = 0; i < inputs1.length; i++) {alert(inputs1[i]);}</script>
    

11. JS-对象-DOM-案例

在这里插入图片描述

<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>JS-对象-DOM</title>
</head>
<body><img id="h1" src="../html/尤雨溪照片.webp" ><div class="cls">传智教育</div>  <br><div class="cls">黑马程序员</div>  <br><input type="checkbox" name="hobby"> 电影<input type="checkbox" name="hobby"> 旅游<input type="checkbox" name="hobby"> 游戏<script>//1.改变img便签中src的属性(更换图片)var img = document.getElementById('h1');alert(img);img.src = "../html/秋收.webp";// 2.将所有div标签的内容后面加上:very good(红色字体)var divs = document.getElementsByTagName('div');for (let i = 0; i < divs.length; i++) {const div = divs[i];div.innerHTML = div.innerHTML + "<font color='red'>very good</font>";             }// 3.使所有的复选框都呈现出被选中状态var inputs = document.getElementsByName('hobby');for (let i = 0; i < inputs.length; i++) {const input = inputs[i];input.checked = true;}</script>
</body>

12. JS-事件-事件绑定&常见事件

  1. 事件监听

    • 事件:HTML事件是发生在HTML元素上的“事情”。比如:
      • 按钮被点击
      • 鼠标移动到元素上
      • 按下键盘按键
    • 事件监听:JavaScript可以在事件被侦测到时 执行代码
  2. 事件绑定

    • 方式一:通过 HTML标签中的事件属性进行绑定
    <input type="button" onclick="on()" value="按钮1">
    <script>function on(){alert('我被点击了!'};
    </script>
    
    • 方式二:通过 DOM 元素属性绑定
    <input type="button" id="btn" value="按钮2">
    <script>document.getElementById('btn').onclick=function(){alert('我被点击了!);}
    </script>
    

    在这里插入图片描述

  3. 常见事件

    • onclick:鼠标单击事件

    • onblur:元素失去焦点

    • onfocus:元素获得焦点

    • onload:某个页面或图像被完成加载

    • onsubmit:当表单提交时触发该事件

    • onkeydown:某个键盘的键被按下

    • onmouseover:鼠标被移到某元素之上

    • onmouseout:鼠标从某元素移开
      在这里插入图片描述

      <body onload="load()"><form action="" style="text-align: center;" onsubmit="subfn()"><input type="text" name="username" onblur="bfn()" onfocus="ffn()" onkeydown="kfn()"><input id="b1" type="submit" value="提交" ><input id="b2" type="button" value="单击事件" onclick="fnl()"></form><br><br><br><table width="800px" border="1" cellspacing="0" align="center" onmouseover="over()" onmouseout="out()" ><tr><th>学号</th><th>姓名</th><th>分数</th><th>评语</th></tr><tr align="center"><td>001</td><td>张三</td><td>90</td><td>优秀</td></tr><tr align="center"><td>002</td><td>李四</td><td>95</td><td>很优秀</td></tr></table><script>//onload:页面、元素加载完成后触发function load() {console.log("页面加载完成...");}//onclick:鼠标点击事件function fnl() {console.log("单击事件被点击了...");}// onblur:失去焦点事件function bfn() {console.log("失去焦点...");}// onfocus:获得焦点function ffn() {console.log("获得焦点...");}//onkeydown:某个键盘的按键被按下function kfn() {console.log("键盘被按下了...");}//onmouseover:鼠标被移动到某元素之上function over() {console.log("鼠标移入了...");}//onmouseout:鼠标被移动到某元素之上function out() {console.log("鼠标移出了...");}//submit:当表单提交时触发该事件function subfn() {alert("表单被提交了...");}</script>
      </body>
      

13. JS-事件-案例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/1352.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从CentOS到龙蜥:企业级Linux迁移实践记录(龙蜥开局)

引言&#xff1a; 在我们之前的文章中&#xff0c;我们详细探讨了从CentOS迁移到龙蜥操作系统的基本过程和考虑因素。今天&#xff0c;我们将继续这个系列&#xff0c;重点关注龙蜥系统的实际应用——特别是常用软件的安装和配置。 龙蜥操作系统&#xff08;OpenAnolis&#…

【python基础——异常BUG】

什么是异常(BUG) 检测到错误,py编译器无法继续执行,反而出现错误提示 如果遇到错误能继续执行,那么就捕获(try) 1.得到异常:try的执行,try内只可以捕获一个异常 2.预案执行:except后面的语句 3.传入异常:except … as uestcprint(uestc) 4.没有异常:else… 5.鉴定完毕,收尾的语…

MySQL的安装

MySQL典型的关系型数据库&#xff08;RDBMS&#xff09;&#xff1a;oracle、MySQL、SqlServer MySQL的版本 5.5~5.7、8.0 MySQL的安装和配置 下载地址&#xff1a; https://downloads.mysql.com/archives/community/ 安装包 (x86, 64-bit), MSI Installer 执行下一步即…

跨境电商领域云手机之选:亚矩阵云手机的卓越优势

在跨境电商蓬勃发展的当下&#xff0c;云手机已成为众多企业拓展海外市场的得力助手。亚矩阵云手机凭借其独特优势&#xff0c;在竞争激烈的云手机市场中崭露头角。不过&#xff0c;鉴于市场上云手机服务供应商繁多&#xff0c;企业在抉择时需对诸多要素予以审慎考量。 跨境电商…

【论文阅读】MAMBA系列学习

Mamba code&#xff1a;state-spaces/mamba: Mamba SSM architecture paper&#xff1a;https://arxiv.org/abs/2312.00752 背景 研究问题&#xff1a;如何在保持线性时间复杂度的同时&#xff0c;提升序列建模的性能&#xff0c;特别是在处理长序列和密集数据&#xff08;如…

Java100道面试题

1.JVM内存结构 1. 方法区&#xff08;Method Area&#xff09; 方法区是JVM内存结构的一部分&#xff0c;用于存放类的相关信息&#xff0c;包括&#xff1a; 类的结构&#xff08;字段、方法、常量池等&#xff09;。字段和方法的描述&#xff0c;如名称、类型、访问修饰符…

【华为云开发者学堂】基于华为云 CodeArts CCE 开发微服务电商平台

实验目的 通过完成本实验&#xff0c;在 CodeArts 平台完成基于微服务的应用开发&#xff0c;构建和部署。 ● 理解微服务应用架构和微服务模块组件 ● 掌握 CCE 平台创建基于公共镜像的应用的操作 ● 掌握 CodeArts 平台编译构建微服务应用的操作 ● 掌握 CodeArts 平台部署微…

C#学习笔记 --- 简单应用

1.operator 运算符重载&#xff1a;使自定义类可以当做操作数一样进行使用。规则自己定。 2.partial 分部类&#xff1a; 同名方法写在不同位置&#xff0c;可以当成一个类使用。 3.索引器&#xff1a;使自定义类可以像数组一样通过索引值 访问到对应的数据。 4.params 数…

用python编写一个放烟花的小程序

import pygame import random # 代码解释及使用说明&#xff1a; # 首先&#xff0c;导入 pygame 和 random 库。pygame 用于创建游戏窗口和图形绘制&#xff0c;random 用于生成随机数。 # 初始化 pygame&#xff0c;并设置屏幕尺寸为 800x600 像素&#xff0c;设置窗口标题为…

栈 (算法十二)

1.删除字符串中的所有相邻项 link:1047. 删除字符串中的所有相邻重复项 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 栈&#xff0b;模拟 code class Solution { public:string removeDuplicates(string s) {// 栈来模拟即可// string代替栈string ans;for(…

特制一个自己的UI库,只用CSS、图标、emoji图 第二版

图&#xff1a; 代码&#xff1a; index.html <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>M…

Linux第二课:LinuxC高级 学习记录day01

0、大纲 0.1、Linux 软件安装&#xff0c;用户管理&#xff0c;进程管理&#xff0c;shell 命令&#xff0c;硬链接和软连接&#xff0c;解压和压缩&#xff0c;功能性语句&#xff0c;结构性语句&#xff0c;分文件&#xff0c;make工具&#xff0c;shell脚本 0.2、C高级 …

数据结构(Java版)第八期:LinkedList与链表(三)

专栏&#xff1a;数据结构(Java版) 个人主页&#xff1a;手握风云 目录 一、链表中的经典面试题 1.1. 链表分割 1.2. 链表的回文结构 1.3. 相交链表 1.4. 环形链表 一、链表中的经典面试题 1.1. 链表分割 题目中要求不能改变原来的数据顺序&#xff0c;也就是如上图所示。…

自动连接校园网wifi脚本实践(自动网页认证)

目录 起因执行步骤分析校园网登录逻辑如何判断当前是否处于未登录状态&#xff1f; 书写代码打包设置开机自动启动 起因 我们一般通过远程控制的方式访问实验室电脑&#xff0c;但是最近实验室老是断电&#xff0c;但重启后也不会自动连接校园网账户认证&#xff0c;远程工具&…

【TI毫米波雷达】DCA1000不使用mmWave Studio的数据采集方法,以及自动化实时数据采集

【TI毫米波雷达】DCA1000不使用mmWave Studio的数据采集方法&#xff0c;以及自动化实时数据采集 mmWave Studio提供的功能完全够用了 不用去纠结用DCA1000低延迟、无GUI传数据 速度最快又保证算力无非就是就是Linux板自己写驱动做串口和UDP 做雷达产品应用也不会采用DCA1000的…

目标检测中的Bounding Box(边界框)介绍:定义以及不同表示方式

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…

【C语言】获取文件属性

目录 1. stat函数 2. 获取文件属性 3. 获取文件权限 1. stat函数 int stat(const char *path, struct stat *buf); 功能&#xff1a;获取文件属性 参数&#xff1a; path&#xff1a;文件路径名buf&#xff1a;保存文件属性信息的结构体 返回值&#xff1a;成功&#xff1…

springboot

springboot排出tomcat服务器&#xff0c;当成spring容器使用 springboot-mybatis springboot-mybatisplus 整合druid

【算法】将单链表按值划分

问&#xff1a; 将单链表按某值划分成左边小、中间相等、右边大的形式 答&#xff1a; 笔试&#xff1a;初始化一个Node类型的数组&#xff0c;对数组进行partition&#xff0c;然后把数组中的节点元素串成链表 public static Node listPartition1(Node head, int pivot) {…

图解Git——分支的新建与合并《Pro Git》

⭐分支的新建与合并 先引入一个实际开发的工作流&#xff1a; 开发某个网站。为实现某个新的需求&#xff0c;创建一个分支。在这个分支上开展工作。 正在此时&#xff0c;你突然接到一个电话说有个很严重的问题需要紧急修补。你将按照如下方式来处理&#xff1a; 切换到你…