![](https://img-blog.csdnimg.cn/e7cc342c2ef94f718bb7d9656e7bd90d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JavaSE(含面试题,斯坦福大学练习题以及经典算法题)
JAVASE,内附面试题和斯坦福大学练习题,热点问题等
时间虚拟机
投入的方式
展开
-
给定一个字符串的摘要算法,输出给定字符串的摘要值,去除字符串中非字母的符号,如果连续出现字符(不区分大小写),则输出:该字符(小写)+连续出现次数。如果是非连续的字符(不区分大小写)...
给定一个字符串的摘要算法,输出给定字符串的摘要值,去除字符串中非字母的符号,如果连续出现字符(不区分大小写),则输出:该字符(小写)+连续出现次数。如果是非连续的字符(不区分大小写),则输出:该字符(小写)+该字母之后字符串中出现该字符的次数。按照以上方式表示后的字符串进行排序:字母和紧随的数字作为一组进行排序,数字大的在前,数字相同的,则按字母进行排序,字母小的在前。输入描述:一行字符串,长度为[1,200],输出描述:摘要字符串。用java写出这个算法。话不多说,我们直接上代码。原创 2023-06-05 15:06:25 · 650 阅读 · 0 评论 -
定义一个方法,把int类型数组中的数据按照指定格式拼接成一个字符串返回,调用该方法,并在控制台输出结果。例如数组为int[]arr={1,2,3};执行方法后的输出结果为:[1,2,3]
定义一个方法,把int类型数组中的数据按照指定格式拼接成一个字符串返回,调用该方法,并在控制台输出结果。例如数组为int[]arr={1,2,3};执行方法后的输出结果为:[1,2,3]原创 2023-05-08 15:33:07 · 379 阅读 · 0 评论 -
数据库面试题(一)
DDL主要用针对是数据库对象(数据库、表、索引、视图、触发器、存储过程、函数)进行创建、修改和删除操作。其主要包括:1) CREATE:创建数据库对象2) ALTER:修改数据库对象3) DROP:删除数据库对象。原创 2023-05-01 22:31:34 · 123 阅读 · 0 评论 -
JavaSE面试题(十)
而这个小口以内,也就是数据进入这个口之后,或者数据从这个口出来之前,是不知道也不需要知道的,也不会关心它如何传输,这属于网络其它层次的工作。生活案例2:可以把Socket比作是一个港口码头,应用程序只要将数据交给Socket,就算完成了数据的发送,具体细节由Socket来完成,细节不必了解。同理,对于接收方,应用程序也要创建一个码头,等待数据的到达,并获取数据。唤醒一个处于等待状态的线程。注意的是在调用此方法的时候,并不能确切的唤醒某一个等待状态的线程,而是由JVM确定唤醒哪个线程,而且不是按优先级。原创 2023-04-29 21:53:01 · 81 阅读 · 0 评论 -
Java在歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,去掉一个最低分, 然后剩余的8位评委的分数进行平均,就是该选手的最终得分.输入每个评委的评分,求某选手的得分
【代码】Java在歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,去掉一个最低分, 然后剩余的8位评委的分数进行平均,就是该选手的最终得分.输入每个评委的评分,求某选手的得分。原创 2023-04-27 12:00:00 · 1734 阅读 · 0 评论 -
Java 生成验证码。规则:前四位是大写或者小写字母,最后一位是数字。
【代码】Java 生成验证码。规则:前四位是大写或者小写字母,最后一位是数字。原创 2023-04-26 08:00:00 · 245 阅读 · 1 评论 -
机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折
【代码】机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。原创 2023-04-25 18:38:26 · 277 阅读 · 0 评论 -
JavaSE面试题(九)
:指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行。Class是Java反射机制的起源和入口,用于获取与类相关的各种信息,提供了获取类信息的相关方法,Class类继承自Object类。面向对象设计原则是面向对象设计的基石,面向对象设计质量的依据和保障,设计模式是面向对象设计原则的经典应用。获取已装载类的属性信息,获取已装载类的方法,获取已装载类的构造方法信息。原创 2023-04-24 23:22:46 · 77 阅读 · 0 评论 -
JavaSE面试题(八)
线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但是在进程切换时,耗费的资源较大,效率要差些。进程有独立的地址空间,进程崩溃后,在保护模式下不会对其他的进程产生影响,而线程只是一个进程中的不同的执行路径。拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问隶属进程的资源。线程执行过程中需要协作同步。进程中包含线程,一个进程中至少有一个线程,也可以拥有多个线程。生命周期的五种状态:新建,就绪,运行,死亡,堵塞。原创 2023-04-23 22:08:12 · 67 阅读 · 0 评论 -
JavaSE面试题(七)
将一个对象写在硬盘上或者网络上,对其进行序列化,将它序列化成为一个字节流。实现接口Serializavle如果对象某个属性是对象,必须也实现接口Serializavle序列化对静态变量无效如果不希望某个属性参与序列化,使用transient序列化版本不兼容。原创 2023-04-22 21:51:45 · 68 阅读 · 0 评论 -
JavaSE面试题(六)
为了效率,如果不是final修饰使用率高可能会降低程序的性能为了安全,JDK中提供的好多核心类是String类,如果不是final修饰可能会被继承重写,成为直接攻击操作系统代码String。原创 2023-04-21 10:04:10 · 68 阅读 · 0 评论 -
JavaSE面试题(五)
=和equals的区别和联系==a)基本类型,比较的是值b)引用类型,比较的是地址c) 不能比较没有父子关系的两个对象equals()a) 系统类一般已经覆盖了equals(),比较的是内容。b) 用户自定义类如果没有覆盖equals(),将调用父类的equals(比如是Object),而Object的equals的比较是地址(return (this == obj);c) 用户自定义类需要覆盖父类的equals()原创 2023-04-18 23:30:13 · 67 阅读 · 0 评论 -
JavaSE面试题(四)
JavaSE面试题,方法和属性,不能修饰构造方法。使用final修饰的类不能被继承,修饰的方法不能被重写,修饰的变量的值不能被修改。所以被final修饰的变量就变成了常量abstract可以用来修饰类和方法,但不能修饰属性和构造方法。修饰类是抽象类,修饰方法是抽象方法,抽象类需要被继承,抽象方法需要子类被重写final、finally、finalize的区别final修饰符:如果一个类被final修饰,它不能派生出新的子类,不能作为父类被继承。原创 2023-04-17 21:24:24 · 72 阅读 · 0 评论 -
JavaSE面试题(三)
JavaSE面试题项是:如果定义了可变参数的方法,不允许同时定义相同类型数组参数的方法。,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的。基本数据类型的整数类型(byte、short、int、long)默认值是。类型的引用类型(类、数组、接口、String)默认值是。数组元素的有序体现在索引的顺序,而不是大小的顺序。可变参数的优点是:方便,简单,减少重载方法的数量。可变参数对应的实参可以是多个,也可以是数组。数组可以存放的只能是同种数据类型的元素,类是对象的抽象,而对象是类的具体。原创 2023-04-16 20:33:46 · 55 阅读 · 0 评论 -
JavaSE面试题(二)
JavaSE面试题 递归算法是一种直接或间接调用自身的算法过程。特 点:递归就是在过程或者函数里调用自身。递归的使用必须设计一个递归出口作为递归结束条件递归算法在运用时很简洁,但是运行效率低。在递归调用过程中系统为每一层的返回点和局部量开辟了栈来存储,递归次数过多容易造成栈溢出,所以一般不提倡使用递归算法设计程序。原创 2023-04-14 21:48:35 · 65 阅读 · 0 评论 -
JAVA求数组的最大值和最小值
JAVA求数组的最大值和最小值通过索引进行对比赋值,通过数组长度(length)确定数组最大索引(length-1)在我们不确定数组的元素或者元素个数过多时求最大值如何遍历整个数组比较值呢?创建了一个数组后,我们想要求它的最大或者最小值需要进行什么过程?答案是通过数组的两个属性:索引和数组长度。原创 2023-04-13 20:13:01 · 2426 阅读 · 0 评论 -
JavaSE面试题(一)
JavaSE面试题(一)JVM全称java virtual machine ,JAVA虚拟机JRE 全称java runtime environment JAVA运行环境JDK 全称java development kit JAVA开发工具包JDK包含JRE包含JVM。原创 2023-04-12 22:20:54 · 68 阅读 · 0 评论 -
JAVA判断输入整数是否为回文数
例如121就是回文数,不论从左到右还是从右到左,得到的正序和倒序值都是“121”。而456就不是回文数,因为正序的值是456,但倒序的值就变成了“654”。下面我们用JAVA代码实现键盘输入一个整数判断输入整数是不是回文数:原创 2023-04-11 12:00:00 · 1023 阅读 · 0 评论 -
世界最高山峰是珠穆朗玛峰(8844.43米=8844430毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度?
for循环,while循环,还是switch循环?首先我们拿到题目后,很明显的发现可以用。高度等于8844430毫米结束循环。根据分析,我们发现,在题目中。原创 2023-04-10 20:23:11 · 1595 阅读 · 0 评论 -
数组(冒泡排序,选择排序,插入排序)
/ 修改最小值的下标。//通过符号位可以减少无谓的比较,如果已经有序了,就退出循环。//如果后一个大于前一个。// 认为目前的数就是最小的, 记录最小数的下标。// 当退出for就找到这次的最小值。//内层循环,它决定每趟走一次。但是对于一个数组来说,数组的类型是固定的,// 外层循环,它决定一共走几趟。数组会在内存中开辟一块连续的空间,每一个空间相当于之前的一个变量,称为。数组元素是有序的,但并不是大小的顺序,而是索引的顺序。:数组是相同类型数据的有序的集合。注意:数组的下标/索引。原创 2023-04-09 21:18:45 · 109 阅读 · 1 评论 -
三种流程控制结构和循环(关键字)的区别特点
3.如果while循环第一次判断为true, 则两种循环没有区别。,继续进行循环条件的判断(for循环还会i++)。相同之处:都是分支语句,多超过一种的情况进行判断处理。3.continue: 循环体中。多分支语句和switch多分支语句的异同之处。,第一次判断为false,循环体一次都不执行。retrun和System.exit的区别。while和do-while循环的区别。break和continue的作用。结束当前循环并退出当前循环体。为等值判断(不允许比如。为等值和区间都可以,原创 2023-04-08 10:00:00 · 100 阅读 · 0 评论 -
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换原创 2023-04-07 10:00:00 · 1636 阅读 · 0 评论 -
输入圆形半径,求圆形的周长和圆形的面积,并将结果输出
System.out.println("该圆的面积为:"+"S="+"3.14*"+r+"*"+r+"="+S);System.out.println("该圆的周长为:"+"C="+"2*3.14*"+r+"="+C);//接受键盘输入的数字并赋值给定义的变量r。System.out.println("该圆的半径为:"+"R="+r);System.out.println("请输入圆的半径:");//求圆的面积,公式为π乘半径r乘半径r。//求圆的周长,公式为2乘π乘半径r。原创 2023-04-06 12:00:00 · 4506 阅读 · 1 评论 -
JAVA控制台打印九九乘法表
首先打印九九乘法表的Java代码本质是两层for循环的嵌套,控制循环条件才能得到。原创 2023-04-06 11:00:00 · 518 阅读 · 0 评论 -
基本数据类型
整数型long:取值范围在-9223372036854775808~9223372036854775807(19位数),内存占用。浮点型double:取值范围在-4.90000000e-324~1.797693e+308,内存占用。整数型int:取值范围在-2147483648~2147483647(10位数),内存占用。浮点型float:取值范围在-3.101295e-38~3.402823e+38,内存占用。整数型short:取值范围在-32768~32767,内存占用。原创 2023-04-05 22:06:50 · 99 阅读 · 0 评论 -
JVM,JRE,JDK,
(注意:这里的bin、lib文件夹和jre里的bin、lib是不同的)总的来说JDK是用于java程序的开发,而jre则是只能运行class而没有编译的功能。JRE是Java程序运行时需要的运行环境。JVM的主要工作是解释自己的指令集(即字节码)到CPU的指令集或对应的系统调用,保护用户被恶意程序骚扰。JVM对上层的Java源文件是不关心的,它关注的只是由源文件生成的类文件(字节码文件(.class))JVM是Java平台的基础,和实际的机器一样,它也有自己的指令集,并且在运行时操作不同的内存区域。原创 2023-04-06 10:00:00 · 83 阅读 · 0 评论 -
JAVA的安全性
JAVA异常处理机制主要依赖于五个关键字:try,catch,finally,throw,throws来进行异常处理。因为原来这个内存地址可能存储着重要数据或者是其他程序运行所占用的,并且使用指针也很容易造成数组越界的问题。由于指针可进行移动运算,指针可以随便指向一个内存区域,不管这个区域是否可用。不需要程序员直接控制内存回收,由垃圾回收器在后台自动回收不再使用的内存。也避免了程序错误回收程序核心类库的内存,导致系统崩溃。1,JAVA取消了强大但又危险的指针,而代以之引用。2,在运行环境提供了。原创 2023-04-05 18:03:17 · 837 阅读 · 1 评论 -
JAVA跨平台原理(图文详述版)
在不同的操作系统中对应着不同的虚拟机,而JAVA字节码文件都可以通过在对应不同操作系统的虚拟机中进行编译,以常见的三个操作系统Windows,Mac,Linux来说明:(如下图)Python的编译运行方式和C语言类似,手机的平台通过Arm平台编译器,电脑的平台通过X86编译器。但即使C语言经过平台编译器后,就算是同样的电脑平台编译,也会由于不同的计算机硬件和操作系统不同,而产生。,然后同样,手机对应的平台编译器是Arm,电脑平台对应的平台编译器是X86。运行是指通过编译后,让机器执行编译后的指令。原创 2023-04-05 10:00:00 · 294 阅读 · 1 评论 -
JAVA三大平台介绍
JAVASE是JAVA语言的标准版。也是其他两个版本(JAVAEE,JAVAME)的基础。JAVAME是JAVA语言的“小体量版”,一般更适用于嵌入式电子设备和小型的移动设备。JAVAEE是JAVA语言的商用版(或者称作企业版),主要用于Web方向的网站开发。我们知道,JAVA是一种当下市场最流行的编程语言。但JAVA也细分为三大平台,分别是。比如电视机,数码相机以及微波炉等。适用于桌面应用的开发。原创 2023-04-04 18:21:27 · 867 阅读 · 1 评论 -
常见的DOS命令(图文详细叙述版)
注意事项:输入盘符大小写均可,但输入冒号切记注意当前状态下输入法是否为英文输入法,如果是中文输入法输入的冒号,将无法识别。(有些电脑用中文显示“用户”,有些是英文“Users”),在用户文件夹下的“UGN”则是这台计算机的名字。上图可以看到,我们的路径以计算机名文件夹结尾换成了新进入的Desktop(桌面文件夹)结尾。所以这行代码表示:“C盘”下的“Users(或用户)文件夹”下的“计算机名文件夹”。切换盘符的命令格式是:想要切换到的盘符名称+冒号+回车键。上文提到了,我们打开CMD后输入命令的。原创 2023-04-03 20:33:39 · 1811 阅读 · 1 评论