当前位置: 首页 > news >正文

Java 超高频常见字符操作【建议收藏】

文章目录

  • 前言
    • 1. 字符串拼接
    • 2. 字符串查找
    • 3. 字符串截取
    • 4. 字符串替換
    • 5. 字符串分割
    • 6. 字符串比较
    • 7. 字符串格式化
    • 8. 字符串空格处理
  • 总结

前言

为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。
(博客的参考源码可以在我主页的资源里找到,如果在学习的过程中有什么疑问欢迎大家在评论区向我提出)

1. 字符串拼接

1. 使用 + 操作符:

String str1 = "Hello";
String str2 = ", ";
String str3 = "World";String result = str1 + str2 + str3;

这种方法是最简单的,通过使用 + 操作符可以将多个字符串连接在一起。Java会自动处理字符串拼接并创建一个新的字符串对象。

2. 使用 concat() 方法:

String str1 = "Hello";
String str2 = ", ";
String str3 = "World";String result = str1.concat(str2).concat(str3);

concat() 方法用于将一个字符串连接到另一个字符串的末尾。可以连续调用 concat() 方法来连接多个字符串。

3. 使用 StringBuilder 类:

StringBuilder 是一个可变的字符串类,适用于需要频繁修改字符串的情况,因为它不会创建多个中间字符串对象,从而提高了性能。

StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("Hello");
stringBuilder.append(", ");
stringBuilder.append("World");String result = stringBuilder.toString();

在这种情况下,我们首先创建一个 StringBuilder 对象,然后使用 append() 方法来添加需要拼接的字符串,最后通过 toString() 方法将 StringBuilder 转换为不可变的 String

4. 使用 StringBuffer 类:

StringBuffer 类与 StringBuilder 类 类似,但是是线程安全的,适用于多线程环境。

StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append("Hello");
stringBuffer.append(", ");
stringBuffer.append("World");String result = stringBuffer.toString();

与 StringBuilder 一样,我们可以使用 append() 方法来构建最终的字符串,然后通过 toString() 方法获取不可变的 String。

5. 使用 String.join() 方法(Java 8+):

这种方法更加简洁,特别适用于将多个字符串与指定的分隔符连接起来的情况。

String.join() 
String str1 = "Hello";
String str2 = ", ";
String str3 = "World";String result = String.join(str2, str1, str3);

2. 字符串查找

1.使用 indexOf() 方法查找子字符串的位置:

indexOf() 方法用于查找一个字符串是否包含另一个子字符串,并返回第一次出现的位置索引。如果未找到,它将返回 -1。

String mainString = "Hello, World!";
String subString = "World";
int position = mainString.indexOf(subString);if (position != -1) {System.out.println("子字符串在主字符串中的位置是:" + position);
} else {System.out.println("子字符串未找到!");
}

2.使用 lastIndexOf() 方法查找最后一次出现的位置:

lastIndexOf() 方法与 indexOf() 方法类似,但它返回最后一次出现的位置索引。

String mainString = "Java is a powerful programming language. Java is also fun!";
String subString = "Java";
int position = mainString.lastIndexOf(subString);if (position != -1) {System.out.println("最后一次出现的位置是:" + position);
} else {System.out.println("子字符串未找到!");
}

3.使用 contains() 方法检查字符串是否包含子字符串:

contains() 方法用于检查一个字符串是否包含另一个子字符串,它返回一个布尔值。

String mainString = "This is a Java example.";
String subString = "Java";
boolean contains = mainString.contains(subString);if (contains) {System.out.println("主字符串包含子字符串!");
} else {System.out.println("主字符串不包含子字符串!");
}

4.使用正则表达式进行高级搜索:

Java 也支持使用正则表达式来进行复杂的字符串搜索。你可以使用 PatternMatcher 类来实现这一点。这允许你执行更复杂的模式匹配操作。

import java.util.regex.*;String text = "The quick brown fox jumps over the lazy dog.";
String pattern = "fox";Pattern compiledPattern = Pattern.compile(pattern);
Matcher matcher = compiledPattern.matcher(text);while (matcher.find()) {System.out.println("找到匹配字符串: " + matcher.group());
}

3. 字符串截取

1.使用 substring() 方法:

substring() 方法用于从一个字符串中截取子串,你可以指定截取的起始位置和结束位置。这个方法有两种形式:一种只传入起始位置,另一种传入起始位置和结束位置。

String mainString = "Hello, World!";// 截取从索引2到索引5之间的子串(包括索引2,但不包括索引5)
String subString1 = mainString.substring(2, 5);
System.out.println("截取子串1: " + subString1); // 输出 "llo"// 从索引7开始截取到字符串末尾
String subString2 = mainString.substring(7);
System.out.println("截取子串2: " + subString2); // 输出 "World!"

2.使用 split() 方法分割字符串:

split() 方法允许你根据某个分隔符将字符串拆分为子串,然后选择需要的子串。

String text = "apple,banana,grape";// 使用逗号作为分隔符拆分字符串
String[] fruits = text.split(",");for (String fruit : fruits) {System.out.println("水果: " + fruit);
}

3.使用正则表达式进行高级截取:

Java 的正则表达式库允许你根据复杂的模式来截取字符串。

import java.util.regex.*;String text = "The quick brown fox jumps over the lazy dog.";
String pattern = "\\b\\w+\\b"; // 匹配单词Pattern compiledPattern = Pattern.compile(pattern);
Matcher matcher = compiledPattern.matcher(text);while (matcher.find()) {System.out.println("匹配到的单词: " + matcher.group());
}

4. 字符串替換

1.使用 replace() 方法:

replace() 方法用于将指定的字符或子字符串替换为新的字符或子字符串。

String originalString = "Hello, World!";
String searchString = "World";
String replacementString = "Java";String modifiedString = originalString.replace(searchString, replacementString);
System.out.println("替换后的字符串: " + modifiedString);

输出:

替换后的字符串: Hello, Java!

2.使用 replaceAll() 方法进行正则表达式替换:

replaceAll() 方法允许你使用正则表达式进行更灵活的替换操作。

String originalString = "The quick brown fox jumps over the lazy dog.";
String pattern = "fox";
String replacementString = "cat";String modifiedString = originalString.replaceAll(pattern, replacementString);
System.out.println("替换后的字符串: " + modifiedString);

输出:

  替换后的字符串: The quick brown cat jumps over the lazy dog.

3.使用 StringBuilder 进行替换:

如果需要进行多次替换或性能要求较高,可以使用 StringBuilder 类。

StringBuilder stringBuilder = new StringBuilder("Java is easy. Java is fun.");
String searchString = "Java";
String replacementString = "Python";
int index = stringBuilder.indexOf(searchString);
while (index != -1) {stringBuilder.replace(index, index + searchString.length(), replacementString);index = stringBuilder.indexOf(searchString);
}String modifiedString = stringBuilder.toString();
System.out.println("替换后的字符串: " + modifiedString);

输出:

  替换后的字符串: Python is easy. Python is fun.

5. 字符串分割

1. 使用 split() 方法:

split() 方法是Java中最常用的字符串分割方法。它使用指定的正则表达式作为分隔符,将字符串分割成一个字符串数组。

String inputString = "apple,orange,banana,grape";
String[] fruits = inputString.split(",");System.out.println("分割后的水果:");
for (String fruit : fruits) {System.out.println(fruit);
}

输出:

分割后的水果:
apple
orange
banana
grape

2. 使用 StringTokenizer 类:

StringTokenizer 类是Java中另一种进行字符串分割的方式,它使用指定的分隔符将字符串分割成标记。

String inputString = "Java is a powerful programming language";
StringTokenizer tokenizer = new StringTokenizer(inputString);System.out.println("分割后的单词:");
while (tokenizer.hasMoreTokens()) {System.out.println(tokenizer.nextToken());
}

输出:

分割后的单词:
Java
is
a
powerful
programming
language

3. 使用正则表达式:

你也可以使用正则表达式作为分隔符,以实现更灵活的字符串分割。

String inputString = "Java123is456a789powerful";
String[] parts = inputString.split("\\d+");
System.out.println("分割后的部分:");
for (String part : parts) {System.out.println(part);
}

输出:

分割后的部分:
Java
is
a
powerful

4. 使用 Apache Commons Lang 库:

Apache Commons Lang 库提供了 StringUtils 类,其中有一个方便的 split() 方法,可以更容易地处理字符串分割。

import org.apache.commons.lang3.StringUtils;String inputString = "Java;C;C++;Python";
String[] languages = StringUtils.split(inputString, ';');System.out.println("分割后的编程语言:");
for (String language : languages) {System.out.println(language);
}

输出:

分割后的编程语言:
Java
C
C++
Python

6. 字符串比较

1. 使用 equals() 方法进行内容比较:

equals() 方法用于比较两个字符串的内容是否相同。它比较字符串的每个字符,而不仅仅是比较引用是否相等。

String str1 = "Hello";
String str2 = "World";
String str3 = "Hello";boolean isEqual1 = str1.equals(str2); // 返回 false
boolean isEqual2 = str1.equals(str3); // 返回 trueSystem.out.println("str1 和 str2 是否相等:" + isEqual1);
System.out.println("str1 和 str3 是否相等:" + isEqual2);

2. 使用 equalsIgnoreCase() 方法进行忽略大小写的内容比较:

equalsIgnoreCase() 方法与 equals() 方法类似,但它会忽略字符串的大小写。

String str1 = "Hello";
String str2 = "hello";boolean isEqualIgnoreCase = str1.equalsIgnoreCase(str2); // 返回 trueSystem.out.println("str1 和 str2 是否相等(忽略大小写):" + isEqualIgnoreCase);

3. 使用 compareTo() 方法进行字典顺序比较:

compareTo() 方法用于比较两个字符串的字典顺序。它返回一个整数,表示两个字符串之间的比较结果。

String str1 = "apple";
String str2 = "banana";
String str3 = "cherry";int result1 = str1.compareTo(str2); // 返回负数
int result2 = str2.compareTo(str1); // 返回正数
int result3 = str1.compareTo(str3); // 返回负数System.out.println("str1 和 str2 的比较结果:" + result1);
System.out.println("str2 和 str1 的比较结果:" + result2);
System.out.println("str1 和 str3 的比较结果:" + result3);

4. 使用 startsWith() 和 endsWith() 方法检查前缀和后缀:

startsWith() 方法用于检查字符串是否以指定的前缀开头,而 endsWith() 方法用于检查字符串是否以指定的后缀结尾。

String str = "Hello, World";boolean startsWithHello = str.startsWith("Hello"); // 返回 true
boolean endsWithWorld = str.endsWith("World");     // 返回 falseSystem.out.println("字符串是否以 Hello 开头:" + startsWithHello);
System.out.println("字符串是否以 World 结尾:" + endsWithWorld);

5. 使用 compareToIgnoreCase() 方法进行忽略大小写的字典顺序比较:

compareToIgnoreCase() 方法与 compareTo() 方法类似,但它会忽略字符串的大小写。

String str1 = "apple";
String str2 = "Banana";int result = str1.compareToIgnoreCase(str2); // 返回正数System.out.println("str1 和 str2 的比较结果(忽略大小写):" + result);

7. 字符串格式化

1. 使用 String.format()

String.format() 方法允许您创建格式化的字符串,类似于C语言中的 printf() 函数。它使用占位符来指定要插入的数据以及它们的格式。占位符由百分号 (%) 后跟一个字符组成,该字符表示插入数据的类型。以下是一些常见的占位符及其用法:

  • %s :字符串。
  • %d :整数。
  • %f :浮点数。
  • %n :换行符。

示例:

String name = "Alice";
int age = 30;
double salary = 50000.50;String formattedString = String.format("Name: %s, Age: %d, Salary: %.2f", name, age, salary);
System.out.println(formattedString);

输出:

Name: Alice, Age: 30, Salary: 50000.50

在上面的示例中,我们使用了 %s%d%.2f 占位符来插入字符串、整数和浮点数,并指定了浮点数保留两位小数。

2. 使用 printf()

printf() 方法是 System.out 对象的一个方法,它用于将格式化的字符串输出到控制台。与 String.format() 类似,它使用相同的占位符来格式化输出。

示例:

String name = "Bob";
int age = 25;
double height = 1.75;System.out.printf("Name: %s, Age: %d, Height: %.2f%n", name, age, height);

输出:

Name: Bob, Age: 25, Height: 1.75

8. 字符串空格处理

1. 删除空格:

  • .使用 String 类的 trim() 方法删除字符串前后的空格。
  • trim() 返回一个新的字符串,其中删除了前导和尾随的空格。
String text = "  This is a text with spaces  ";
String trimmedText = text.trim();
System.out.println(trimmedText); // 输出: "This is a text with spaces"

2. 替换空格:

  • 使用 String 类的 replace() 方法替换字符串中的空格。
  • 你可以将空格替换为其他字符或字符串。
String text = "Hello, World!";
String replacedText = text.replace(" ", "_");
System.out.println(replacedText); // 输出: "Hello,_World!"

3. 分割字符串:

  • 使用 split() 方法将字符串拆分成字符串数组。
  • 默认情况下,split() 使用空格作为分隔符,但你可以指定自定义分隔符。
String sentence = "This is a sample sentence";
String[] words = sentence.split(" "); // 使用空格分割成单词数组

4. 检查空格

  • 使用 contains() 方法检查字符串是否包含空格。
String text = "This has spaces";
boolean hasSpaces = text.contains(" "); // 返回 true

5. 统计空格的数量:

  • 使用循环遍历字符串并计算空格的数量。
String text = "Count the spaces in this text";
int spaceCount = 0;
for (char c : text.toCharArray()) {if (c == ' ') {spaceCount++;}
}
System.out.println("空格数量:" + spaceCount); // 输出: "空格数量:5"

6. 替换多个连续空格:

  • 使用正则表达式来替换连续的多个空格为单个空格。
String text = "Replace  multiple   spaces  with one.";
String replacedText = text.replaceAll("\\s+", " ");
System.out.println(replacedText); // 输出: "Replace multiple spaces with one."

7. 处理制表符和换行符:

  • 空白字符不仅包括空格,还包括制表符 (\t) 和换行符 (\n) 等。
  • 你可以使用 replaceAll() 来处理它们,就像处理空格一样。
String textWithTabs = "This\tis\ta\ttab\tseparated\ttext";
String textWithNewlines = "This\nis\na\nnewline\nseparated\ntext";

总结

欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下。
(博客的参考源码可以在我主页的资源里找到,如果在学习的过程中有什么疑问欢迎大家在评论区向我提出)

相关文章:

Java 超高频常见字符操作【建议收藏】

文章目录 前言1. 字符串拼接2. 字符串查找3. 字符串截取4. 字符串替換5. 字符串分割6. 字符串比较7. 字符串格式化8. 字符串空格处理 总结 前言 为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一…...

MongoDB数据库网站网页实例-编程语言Python+Django

程序示例精选 PythonDjangoMongoDB数据库网站网页实例 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《PythonDjangoMongoDB数据库网站网页实例》编写代码,代码整洁,…...

开箱报告,Simulink Toolbox库模块使用指南(七)——S-Fuction Builter模块

S-Fuction Builter S-Fuction Builter模块,Mathworks官方Help对该部分内容的说明如下所示。 DFT算法的原理讲解和模块开发在前几篇文章中已经完成了,本文介绍如何使用S-Fuction Builter模块一步到位地自动开发DFT算法模块,包括建立C MEX S-Fu…...

spring-boot 操作 mongodb 数据库

如何使用 spring-boot 操作 mongodb 数据库 配置文件&#xff1a; spring:data:mongodb:host: 127.0.0.1database: fly_articleDbport: 27017# 可以采取 mysql 写法# uri: mongodb://127.0.0.1/fly_articleDb依赖信息: <?xml version"1.0" encoding"UTF-…...

JVM篇---第三篇

系列文章目录 文章目录 系列文章目录一、什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?二、Java内存结构三、说说对象分配规则一、什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文…...

建筑施工行业招投标资源众包分包系统站点开发

一款针对建筑、施工行业开发的程序系统平台&#xff0c;运营方可以招募企业发布招投标信息以及招聘信息。 核心功能&#xff1a;一、项目招投标众包发布和投标 企业可以根据自身资源或者实际需求发布参与招投标信息&#xff0c;程序后台可以管理、审核用户发布的信息。参与招…...

【Linux基础】Linux发展史

&#x1f449;系列专栏&#xff1a;【Linux基础】 &#x1f648;个人主页&#xff1a;sunny-ll 一、前言 本篇主要介绍Linux的发展历史&#xff0c;这里并不需要我们掌握&#xff0c;但是作为一个合格的Linux学习者与操作者&#xff0c;这些东西是需要了解的&#xff0c;而且…...

openGauss学习笔记-90 openGauss 数据库管理-内存优化表MOT管理-内存表特性-使用MOT-MOT使用重试中止事务

文章目录 openGauss学习笔记-90 openGauss 数据库管理-内存优化表MOT管理-内存表特性-使用MOT-MOT使用重试中止事务 openGauss学习笔记-90 openGauss 数据库管理-内存优化表MOT管理-内存表特性-使用MOT-MOT使用重试中止事务 在乐观并发控制&#xff08;OCC&#xff09;中&…...

【Docker】搭建 Docker 镜像仓库

文章目录 前言&#xff1a;公有仓库和私有仓库公共镜像仓库私有镜像仓库 一、搭建 Docker 镜像仓库1.1 搭建简化版的镜像仓库1.2 搭建带有图形化界面的镜像仓库1.3 配置 Docker 信任地址 二、向私有镜像仓库推送和拉取镜像2.1 推送本地镜像到私有仓库2.2 拉取私有仓库中的镜像 …...

Python数据攻略-Pandas的数据计算、拼接与可视化

如何将数据转化为有用的信息?在数据分析的世界里,仅仅拥有大量数据是不够的。需要有方法去“翻译”这些数据,让它们告诉我们一些有用的信息。 本篇文章要探讨的内容:如何使用Pandas进行数据计算、拼接和可视化,从而让数据“说话”。 文章目录 Pandas的数据计算基本数学运…...

【计算机网络】HTTPS协议详解

文章目录 一、HTTPS协议 介绍 1、1 HTTP协议不安全的体现 1、2 什么是 HTTPS协议 二、加密的一些概念 2、1 怎么理解加密 2、2 为什么要加密 2、3 常见的加密方式 2、2、1 对称加密 2、2、2 非对称加密 三、HTTPS协议探究加密过程 3、1 只使用对称加密 3、2 只是用非对称加密 3…...

Septentrio接收机二进制的BDS b2b改正数解码

Galileo的HAS和BDS B2b改正数为实时PPP提供了可能&#xff0c;要实现实时PPP解算&#xff0c;必须对对应的数据进行解码。由于没有做过解码的工作&#xff0c;现结合qzsl6tool代码对Septentrio的解码代码进行学习。 1. 二进制枕头的识别和解码 定义一个读取数据的类&#xff…...

nvm 管理 node版本

下载地址 https://nvm.uihtm.com/download.html 基础命令 查看所有可安装的node版本 nvm list available 查看本地已经安装的所有版本&#xff1a; nvm list 安装指定的node版本 nvm install 14.18.1 使用指定node版本 nvm use 14.18.1 卸载指定node版本 nvm uninstall …...

LeetCode 15.三数之和

三数之和 问题描述 LeetCode 15.三数之和 给你一个整数数组 nums&#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k&#xff0c;同时还满足 nums[i] nums[j] nums[k] 0。请你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答…...

Linux实用操作(固定IP、进程控制、监控、文件解压缩)

目录 一、快捷键 1、ctrl c强制停止 2、ctrl d退出或登出 3、历史命令搜索history 4、光标移动快捷键 5、清屏 二、软件安装 1、CentOS的yum命令 2、Ubantu的apt命令 三、systemctl命令 四、软连接 五、日期、时区 1、date命令 2、修改Linux时区为东八区 3、nt…...

Redis高可用之哨兵模式、集群

文章目录 一、Redis哨兵模式1.1 简介1.2 哨兵模式的作用1.3 哨兵结构1.4 故障转移机制&#xff08;重要&#xff09;1.5 主节点选举机制 二、部署Redis哨兵模式Step1 修改 Redis 哨兵模式的配置文件&#xff08;所有节点操作&#xff09;Step2 实现基于VIP&#xff08;虚拟IP&a…...

Python数据攻略-DataFrame的创建与基础特性

在数据分析、科学计算或者任何需要处理表格数据的领域,DataFrame都是一个非常重要的工具。就像Excel让处理表格数据变得简单一样,DataFrame也有类似的功能,但更加强大,特别是在处理大量数据时。了解DataFrame不仅能帮你更高效地处理数据,还能让你更容易进行数据清洗、可视…...

【word】从正文开始设置页码

在写报告的时候&#xff0c;会要求有封面和目录&#xff0c;各占一页。正文从第3页开始&#xff0c;页码从正文开始设置 word是新建的 分出三节&#xff08;封面、目录、正文&#xff09; 布局--->分割符--->分节符--->下一页 这样就能将word分为3节&#xff0c;分…...

计算机网络 快速了解网络层次、常用协议、常见物理设备。 掌握程序员必备网络基础知识!!!

文章目录 0 引言1 基础知识的定义1.1 计算机网络层次1.2 网络供应商1.3 猫、路由器、交换机1.4 IP协议1.5 TCP、UDP协议1.6 HTTP、HTTPS、FTP协议1.7 Web、Web浏览器、Web服务器 2 总结 0 引言 在学习的过程中总是会对IP、TCP、UDP、HTTP、HTTPS、FTP这些常见的协议不熟悉&…...

CUDA 安装

查看自己电脑的cuda版本&#xff1a;见文章 查看CUDA版本 我的是&#xff1a; 他的意思就是说&#xff1a;俺的显卡支持的cuda版本是12.0的&#xff08;向下兼容&#xff09; 然后我的项目tensorflow-gpu版本是1.13.2版本的&#xff0c;对应的cuda为10&#xff1a; &#xff…...

Springboot+vue的在线试题题库管理系统(有报告),Javaee项目,springboot vue前后端分离项目。

演示视频&#xff1a; Springbootvue的在线试题题库管理系统&#xff08;有报告&#xff09;&#xff0c;Javaee项目&#xff0c;springboot vue前后端分离项目。 项目介绍&#xff1a; 本文设计了一个基于Springbootvue的前后端分离的在线试题题库管理系统&#xff0c;采用M&…...

【简单的留言墙】HTML+CSS+JavaScript

目标&#xff1a;做一个简单的留言墙 1.首先我们用HTML的一些标签&#xff0c;初步构造区域 样式。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>留言墙</title><style>/* ...... */ …...

linux 火狐浏览器报错Firefox is already running, but is not responding

Ubuntu环境下打开Firefox报错: Firefox is already running, but is not responding.-CSDN博客 killall firefox...

Python:操作SQLite数据库简单示例

本文用最简单的示例演示python标准库提供的SQLite数据库进行新增、查询数据的过程。 代码文件app.py # -*- coding: UTF-8 -*- from flask import Flask import sqlite3app Flask(__name__)app.route(/) def hello_world():return Hello World!#创建数据库 app.route(/creat…...

第8期ThreadX视频教程:应用实战,将裸机工程移植到RTOS的任务划分,驱动和应用层交互,中断DMA,C库和中间件处理等注意事项

视频教程汇总帖&#xff1a;【学以致用&#xff0c;授人以渔】2023视频教程汇总&#xff0c;DSP第12期&#xff0c;ThreadX第8期&#xff0c;BSP驱动第26期&#xff0c;USB实战第5期&#xff0c;GUI实战第3期&#xff08;2023-10-01&#xff09; - STM32F429 - 硬汉嵌入式论坛 …...

【NeurIPS 2023】Backdoor对抗攻防论文汇总

NeurIPS 对抗攻防论文 NeurIPS2022|对抗攻防论文整理 - 知乎 NeurIPS 2023 Papers BIRD: Generalizable Backdoor Detection and Removal for Deep Reinforcement Learning https://neurips.cc/virtual/2023/poster/70618 摘要&#xff1a; 后门攻击对深度强化学习&…...

(Note)在Excel中选中某一行至最后一行的快捷键操作

在 Excel 中&#xff0c;选中一行至最后一行的快捷键是 “Shift 空格 Ctrl 方向键下”。按住 Shift 键&#xff0c;然后按下空格键以选中整行&#xff0c;接着按下 Ctrl 键保持选中状态&#xff0c;并按下方向键下键盘按钮以扩展选中范围至最后一行。 简要步骤如下&#xf…...

古记事法:Windows 下 16 位汇编环境搭建指南(DOSBox-X 篇)

文章目录 参考环境DOSBox-XWOWWindows On Windows 产生的原因Windows On Windows 的工作原理WOW16 的结束与 WOW64 的未来 在现代操作系统中运行 16 位应用程序DOSBox-X 16 位汇编环境的搭建应用准备挂载自动挂载dosbox-x.conf配置工具 参考 项目描述搜索引擎Bing、GoogleAI 大…...

云计算基础:理解AWS、Azure和Google Cloud

云计算基础&#xff1a;理解AWS、Azure和Google Cloud 介绍 云计算已经成为现代科技领域的重要驱动力之一。它为企业提供了灵活性、可伸缩性和成本效益&#xff0c;以满足日益增长的计算和存储需求。本文将深入探讨三个主要的云计算提供商&#xff1a;Amazon Web Services (A…...

【数据结构初阶】七、非线性表里的二叉树(堆的实现 -- C语言顺序结构)

相关代码gitee自取&#xff1a; C语言学习日记: 加油努力 (gitee.com) 接上期&#xff1a; 【数据结构初阶】六、线性表中的队列&#xff08;链式结构实现队列&#xff09;-CSDN博客 1 . 非线性表里的 树(Tree) 树的概念及结构&#xff1a; 树的概念 树是一种非线性的数据…...

福建住房和城乡建设局网站/百度关键词挖掘查询工具

移动深度学习的几个问题 本文主要概括了在移动端深度学习与服务端深度学习的几个重要差异。 一、在移动端和服务器应用深度学习的难点对比 对比点 服务器端 移动端 内存 内存较大&#xff0c;一般不构成限制 内存有限 耗电量 不构成限制 移动设备的耗电量是一个很重要…...

任丘市网站建设公司/营销软文写作

首先必须承认&#xff0c;这次的题目还是很简单的&#xff0c;因为这道题完全就是换了个包装的小学期题目&#xff0c;也就是说&#xff0c;如果让我用C来编写&#xff0c;我可以保证3个小时内编写完毕&#xff0c;也许在一些小的方面&#xff0c;比如输入数字的合法性上存在问…...

建设我们的网站/品牌软文

11年年初来北京找工作&#xff0c;转眼已经8个年头了&#xff0c;经验丰富了&#xff0c;技术更广泛了&#xff0c;也结婚了&#xff0c;孩子也有了&#xff0c;几乎身边所有的地方都在悄悄的发生变化。可是&#xff0c;唯一不变的&#xff0c;确实这身材&#xff08;175cm,60公…...

在线甜点订购网站开发需求分析/网络外包

StringBuilder概述 查阅java.lang.StringBuilder的API&#xff0c;StringBuilder又称为可变字符序列&#xff0c;它是一个类似于 String 的字符串缓冲区&#xff0c;通过某些方法调用可以改变该序列的长度和内容。原来StringBuilder是个字符串的缓冲区&#xff0c;即它是一个容…...

效果图制作网站有哪些/百度搜索排名靠前

需求&#xff1a;列表中每个数字的值加1 方法一&#xff08;简单&#xff09; #!/user/bin/python3 #_coding:UTF-8 _ info [0,1,2,3,4,5] for i,index in enumerate(info): info[index] 1 print(info) 方法二&#xff08;中等&#xff09; #!/user/bin/python3 #_coding:UT…...

做网站看百度脸色/网址导航哪个好

作者 | 冯劲草 上海控安可信软件创新研究院研究员 版块 | 鉴源论坛 观模 01 形式化方法基本概念 形式化方法是基于严格的数学基础&#xff0c;通过采用数学逻辑证明来对计算机软硬件系统进行建模、规约、分析、推理和验证&#xff0c;是用于保证计算机软硬件系统正确性以及…...