IntelliJ IDEA

【Java面试题】如何判断一个字符串中某个字符出现的次数?

这一生的挚爱 提交于 2020-08-06 05:36:04
1. 前言 最近面试了几家公司,体验了一下 电话面试 和今年刚火起来的 视频面试 , 虽然之前就有一些公司会先通过 电话面试 的形式先评估下候选人的能力水平,但好像不多,至少我以前的面试形式100%都是 现场面试 。 面试过程中,不可避免的被问到了很多面试题,本篇博客就总结下面试过程中被问到的关于String的2道面试题,分别是: 如何判断一个字符串中某个字符出现的次数? 如何反转一个字符串? 其余的面试题,目前都已梳理出来,后续会以博客的形式进行分享。 2. 如何判断一个字符串中某个字符出现的次数? 在直接问这个问题之前,面试官先问了我下面这个问题: 请说一下String常用的方法有哪些? 该问题其实是考察Java基础,毕竟String类在平时的开发中使用非常广泛,我当时主要说了以下方法: length equals trim substring concat indexOf lastIndexOf replace split toLowerCase toUpperCase 以上只是面试时我想到的一少部分方法,更多String的方法大家可在IDEA中查看源码,毕竟太多了,如下所示: 在回答完上述问题后,面试官紧接着问了该问题: 如何判断一个字符串中某个字符出现的次数? 听到该问题,我脑海中第一反应是先把字符串转换为字符数组,然后使用foreach循环,在循环体内进行字符比对

英语六级2019游戏声优加薪

心已入冬 提交于 2020-08-06 05:24:02
Passage One Questions 46 to 50 are based on the followingpassage. Effective Friday, Screen Actors Guild-AmericanFederation of Television and Radio Artists ( SAG-AFTRA) has declared a strike against 11 video gamepublishers over games that went into productionafter Feb.17, 2015. The companies include some of the heavyweights of the industry, likeElectronic Arts Productions, Insomniac Games, Activision and Disney. The strike comes in light of an unsuccessful 19 months of negotiations after the existinglabor contract known as the Interactive Media Agreement expired in late 2014. Overall, thestrike

idea 2018.1.2激活方法,有效期至2099年

落爺英雄遲暮 提交于 2020-08-06 04:26:01
1. 下载破解补丁文件JetbrainsCrack-2.7-release-str.jar 链接:https://files.cnblogs.com/files/ziyuyuyu/JetbrainsCrack-2.7-release-str.zip 2.将补丁文件JetbrainsCrack-2.7-release-str.jar放在idea安装包的/bin路径下,如下图 3.同在idea安装包的/bin目录下,对idea.exe.vmoptions和idea64.exe.vmoptions这两个文件配置文件进行修改,在最后一行添加如下一条配置指令: windows版:-javaagent:对应补丁包的路径(如下图:-javaagent:E:\Software\idea\IntelliJ IDEA 2018.1.2\bin\JetbrainsCrack-2.7-release-str.jar) Mac版:-javaagent:../bin/JetbrainsCrack-2.7-release-str.jar 4.保存编辑后的文件,然后打开idea,进入激活窗口此时需要选择 激活码 的激活方式,并输入如下激活码进行激活: JKHX300590

Tomcat部署Web项目的3种方式

让人想犯罪 __ 提交于 2020-08-06 04:15:00
转载自 Tomcat部署Web项目的3种方式 文章目录 一、将war包丢进webapps 二、配置Server.xml部署Web工程 三、添加xml方式部署Web工程 四、注意点 ①将对应位置改为ROOT即可实现目录缺省 ②三种部署方式的优先级别 一、将war包丢进webapps 这是最简单粗暴的方式:将web工程打成war,丢进tomcat/webapps目录即可,tomcat会自动解压。无需修改任何配置文件即可完成部署。 这里我准备了tomcat8.5.43与dubbo控制台的war包来做测试。    ①启动tomcat ②将war丢进webapps目录,tomcat会自动解压该war包。   浏览器直接访问:localhost:8080/dubbo-admin-2.5.10,说明我们的war包部署成功!(访问路径为war包的名称) 二、配置Server.xml部署Web工程 修改配置文件无需我们打war,这样方便开发,结合IDEA自动部署WEB工程至远程服务器(学习笔记)可以实现快速开发。 编辑server.xml 添加如下: <Context docBase="D:\test\dubbo-admin-2.5.10" path="/test" reloadable="false" /> (访问路径为path内容) 通过浏览器访问:localhost:8080/test 三

【Java面试题】List如何一边遍历,一边删除?

丶灬走出姿态 提交于 2020-08-06 04:01:57
这是最近面试时被问到的1道面试题,本篇博客对此问题进行总结分享。 1. 新手常犯的错误 可能很多新手(包括当年的我,哈哈)第一时间想到的写法是下面这样的: public static void main(String[] args) { List<String> platformList = new ArrayList<>(); platformList.add("博客园"); platformList.add("CSDN"); platformList.add("掘金"); for (String platform : platformList) { if (platform.equals("博客园")) { platformList.remove(platform); } } System.out.println(platformList); } 然后满怀信心的去运行,结果竟然抛 java.util.ConcurrentModificationException 异常了,翻译成中文就是:并发修改异常。 是不是很懵,心想这是为什么呢? 让我们首先看下上面这段代码生成的字节码,如下所示: 由此可以看出,foreach循环在实际执行时,其实使用的是 Iterator ,使用的核心方法是 hasnext() 和 next() 。

Spring Boot 项目瘦身指南,瘦到不可思议!

邮差的信 提交于 2020-08-06 03:40:13
目录: 1.前言 2.瘦身前的Jar包 3.解决方案 一、前言 Spring Boot 部署起来虽然简单,如果服务器部署在公司内网,速度还行,但是如果部署在公网,部署起来实在头疼:编译出来的 Jar 包很大,如果工程引入了许多开源组件( Spring Cloud 等),那就更大了。 这个时候如果想要对线上运行工程有一些微调,则非常痛苦。 二、瘦身前的Jar包 Tomcat 在部署Web工程的时候,可以进行增量更新, Spring Boot 也是可以的~ Spring Boot 编译出来的Jar包中,磁盘占用大的,是一些外部依赖库(jar包),例如:进入项目工程根目录,执行 mvn clean install 命令,得到的Jar包,用压缩软件打开,目录结构如下: 整个Jar包 18.18 MB, 但是 BOOT-INF/lib 就占用了将近 18 MB: 三、解决方法 步骤1: 正常编译JAR包,解压出lib文件夹 POM文件如下: <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>com.johnnian.App</mainClass>

IDEA中SVN项目不同颜色含义

北慕城南 提交于 2020-08-06 02:51:21
绿色:已经加入控制暂未提交 红色:未加入版本控制 蓝色:加入,已提交,有改动 白色:加入,已提交,无改动 灰色:版本控制已忽略文件 来源 : https://blog.csdn.net/qq_32600929/article/details/81110538 来源: oschina 链接: https://my.oschina.net/lixingsikao/blog/4303873

深入浅出 Java 类加载机制!

浪子不回头ぞ 提交于 2020-08-06 02:50:03
类加载器 简单讲,类加载器ClassLoader的功能就是负责将class文件加载到jvm内存。 类加载器分类 从虚拟机层面讲分为两大类型的类加载器,一是Bootstrap Classloader即启动类加载器(C++实现),它是虚拟机的一部分,二是其他类型类加载器(JAVA实现),在虚拟机外部,并全部继承ClassLoader类。 从细分的角度讲会分为以下三类类加载器: 1、Bootsrap ClassLoader 启动类加载器,完全由jvm控制加载,外面访问不到这个类加载器,即不能被java程序引用。它主要负责加载jvm自身的工作类,即java/lib目录和-Xbootclasspath参数指定的目录的类库。 2、Extension ClassLoader 扩展类加载器,由java实现,即ExtClassLoader实现类。它主要负责加载java/lib/ext目录和系统环境变量java.ext.dirs指定目录所有类库。 3、Application ClassLoader 应用程序类加载器,由java实现,即AppClassLoader实现类。它的父类是ExtClassLoader,它主要负责加载classpath目录上的类库。如果没有自定义ClassLoader,它就是程序中默认的ClassLoader,即可以通过ClassLoader

Maven Nexus私库搭建及使用,你还不会吗?

谁都会走 提交于 2020-08-06 02:19:28
为什么要使用私库 maven默认去远程中央仓库下载JAR包的,访问国外网络相当慢,如果团队每个人都去下载一遍无疑是网络的浪费,当然也可以添加国内的镜像,如阿里的比较稳定,但如果想添加远程不存在的像第三方公司的JAR包就比较麻烦。 所以,使用私库,第一,开源包只要有一个人下载过其他人就不需要再下载了,直接从私库下载即可。第二,可以用来管理第三方公司的或者远程仓库不存在的JAR包,或者公司不开源的JAR包。 推荐国内稳定的镜像,如阿里的 http://maven.aliyun.com/nexus/content/groups/public/ nexus下载安装 首先去sonatype官网下载nexus包,要下载开源免费版的OSS版,即Open Source Software。 https://www.sonatype.com/nexus-repository-oss 下载最新的3.X的版本,这里以windows为例进行下载。 下载后点击bin目录中的启动文件即可,默认的端口是8081,访问路径是/,也可以去配置文件中修改,这里以默认。 启动后,打开localhost:8081,nexus默认的用户名是admin/admin123 默认安装有以下这几个仓库,在控制台也可以修改远程仓库的地址,第三方仓库等。 Maven配置 修改maven主目录conf/setting.xml配置文件。

DataGrip使用入门

▼魔方 西西 提交于 2020-08-06 00:56:17
最近看到一款数据库客户端工具,DataGrip,是大名鼎鼎的JetBrains公司出品的,就是那个出品Intellij IDEA的公司。DataGrip是一款数据库管理客户端工具,方便连接到数据库服务器,执行sql、创建表、创建索引以及导出数据等。之前试用的客户端工具是dbvisualizer,但是在试用了DataGrip以后,我就决定抛弃dbvisualizer。我相信,当你第一眼看到DataGrip以后,会有一种惊艳的感觉,就好比你第一眼看到一个姑娘,就是那么一瞥,你对自己说,就是她了!废话不多说,来看看DataGrip的常用功能。DataGrip下载链接如下 https://www.jetbrains.com/datagrip/download 。安装过程也很简单,双击安装,下一步,中间会让你选择主题,本人选择的是经典的Darcula,安装完成后,启动,界面如下 相信使用过IDEA的同学会感到很亲切。接下来管理数据库驱动。DataGrip支持主流的数据库,File->DataSource 也可以在Database视图中展开绿色的+号,添加数据库连接 选择需要连接的数据库类型 在面板中,左上部分列出了已经建立的数据库连接,点击各项,右侧会展示当前连接的配置信息,General面板中,可以配置数据库连接的信息,如主机、用户名、密码等,不同数据库配置信息不完全相同,填入数据库URL