Java
文章平均质量分 58
随记
懒笑翻
这个作者很懒,什么都没留下…
展开
-
1.5 位算符 按位与(&)按位或(|) 按位异或(^)按位取反(~)左移(<<)右移(>>)
1.按位与(&)2.按位或(|) 3.按位异或(^)4.按位取反(~)5.左移()原创 2022-05-12 20:29:38 · 191 阅读 · 0 评论 -
jdk 多个版本安装在一台电脑
此电脑-属性-高级系统设置- 环境变量一、删除文件在path在查看Oracle java 的路径,在两个javapath文件夹下删除exe文件(不删的话你后面更新的环境变量会无效,一直是用的之前安装的版本)二、新建JAVA_HOME如下,value对应你的位置以及版本,要用那个的时候,JAVA_HOME就引用哪个版本的JAVA_HOME三、新建系统变量CLASSPATH变量名:CLASSPATH变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\li原创 2022-05-23 11:18:12 · 274 阅读 · 0 评论 -
Java程序设计基础复习 Java语言的特点(9大特点)
基于清华大学出版社《Java程序设计基础》第6版的复习第一章 Java语言概述Java语言的特点(9大特点):简单易学 完全面向对象,去指针、联合体、结构体数据类型。面向对象 以对象为中心,以消息为驱动;支持 封装 继承 多态。平台无关 靠JVM在目标代码级实现平台无关性分布式 支持数据分布 和 操作分布 可靠性 Java解释器运行时实施检查,可以发现数组和字符串访问的越界;Java提供异常处理机制,简化错误处理任务,便于恢复。 安全性 字节码.原创 2022-05-12 20:40:23 · 174 阅读 · 0 评论 -
Java 对多线程的理解
对两种多线程的对比:// Runnable 就是一个接口,Thread类实现了Runnable,Runnable存在解决只能单继承Thread的问题。//因为Thread也实现了Runnable接口 且Runnable接口中只存在一个Run方法// 因此,无论是implements Runnable还是 extendsThread都要实现run方法// 只是如果是直接继承Thread类,当我们调用多线程的时候可以直接.start()// 如果是通过实现Runnable接口,那么需要实例化Thre原创 2020-12-06 22:23:43 · 369 阅读 · 1 评论 -
1. 将插入、冒泡排序算法设计成线程,启动两个以上不同的线程同时运行,计算不同排序 的运行时间。
实验十 多线程实验目的1.线程的概念、线程的生命周期。2.多线程的编程:继承 Thread 类与使用 Runnable 接口。主要仪器设备及耗材安装了 JDK1.8 的 PC 一台实验内容1. 将插入、冒泡排序算法设计成线程,启动两个以上不同的线程同时运行,计算不同排序的运行时间。src/com/temp/RimingTimeOfAlgorithm.javapackage com.temp;import java.util.Random;/** * @Auth..原创 2020-11-27 21:24:25 · 837 阅读 · 0 评论 -
编写一个程序,将一个文本文件的内容按行读出,每读出一行就顺序加上行号,并写入 到另一个文件中。
实验九 Java 语言的输入输出与文件处理实验目的1.了解流式输入输出的基本原理。2.掌握 File、FileInputStream、FileOutputStream 类的使用方法。3.掌握 FileReader、FileWriter、BufferedReader 类的使用方法。主要仪器设备及耗材安装了 JDK1.8 的 PC 一台实验内容2. 编写一个程序,将一个文本文件的内容按行读出,每读出一行就顺序加上行号,并写入到另一个文件中。package com.temp;i...原创 2020-11-16 09:43:06 · 7391 阅读 · 2 评论 -
1. 编写一个程序,从键盘读入一串英文字符串,将每个英文单词的首字母转换成大写后存 到 D:\word.txt 文件中。
实验九 Java 语言的输入输出与文件处理实验目的1.了解流式输入输出的基本原理。2.掌握 File、FileInputStream、FileOutputStream 类的使用方法。3.掌握 FileReader、FileWriter、BufferedReader 类的使用方法。主要仪器设备及耗材安装了 JDK1.8 的 PC 一台实验内容1. 编写一个程序,从键盘读入一串英文字符串,将每个英文单词的首字母转换成大写后存到 D:\word.txt 文件中。2. 编写一个程序,将一个文本.原创 2020-11-16 08:54:19 · 5476 阅读 · 1 评论 -
2. 自定义异常的、拋出和捕获: (1) 自定义两个异常类:非法姓名异常类 IllegaNameException 和非法地址异常类 IllegalAddressException。 (2) 定义 S
2. 自定义异常的、拋出和捕获:(1) 自定义两个异常类:非法姓名异常类 IllegaNameException 和非法地址异常类IllegalAddressException。(2) 定义 Student 类包含 Name 和 Address 属性以及 setName 和 setAddress 方法,当姓名长度小于 1 或者大于 8 时抛出 IllegaNameException,当地址中不包含字符“省”或者“市”时抛出 IllegalAddressException。(3) 编写程序抛出这两原创 2020-11-15 23:24:13 · 997 阅读 · 0 评论 -
1. 编写一个程序,让其抛出常见的一些异常对象(具体如题后列表 ),程序需要对抛出的 异常进行捕获。
1. 编写一个程序,让其抛出常见的一些异常对象(具体如题后列表 ),程序需要对抛出的 异常进行捕获。 ArithmeticException 算术异常类:表示遇到了异常的算术问题,例如被 0 整除。 ArrayStoreException 数组存储异常类:试图把与数组类型不相符的值存入。 ClassCastException 类型强制转换异常:试图把一个对象的引用强制转换为不合适类型。 IndexOutOfBoundsException 下标越界异常类:下标越界。 NullPointerException.原创 2020-11-15 23:17:19 · 1151 阅读 · 0 评论 -
Java 约瑟夫环问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列; ArrayList实现
约瑟夫环问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,输出最后剩下的一个人的编号。package com.temp;import java.util.ArrayList;import java.util.Scanner;public class JosephRingProblem { public static void main(String[.原创 2020-11-02 15:30:28 · 3754 阅读 · 0 评论 -
1.设计一个抽奖程序,程序通过随机方式产生中奖序号。程序可以设置序号包含数字位数 和最大序号,一次抽取几个中奖序号(最少 1 个序号,最多不超过 2 个序号)和总共中奖 人数(最少 5 人)。抽奖过程
实验目的 掌握随机函数的使用主要仪器设备及耗材 安装了 JDK1.8 的 PC 一台实验内容 1.设计一个抽奖程序,程序通过随机方式产生中奖序号。程序可以设置序号包含数字位数 和最大序号,一次抽取几个中奖序号(最少 1 个序号,最多不超过 2 个序号)和总共中奖 人数(最少 5 人)。抽奖过程分多轮进行,最后现实出所有的中奖的序号。package com.temp;import java.io.BufferedReader;import java.io.Inp...原创 2020-10-26 11:20:23 · 2957 阅读 · 4 评论 -
2. 编写一个程序要求定义一个外部类 Outer,然后在 Outer 类中定义一个内部类 Inner 和局部类 Local,内部类 Inner 和局部类 Local 的任务都是显示出外部类中的数组元素
2. 编写一个程序要求定义一个外部类 Outer,然后在 Outer 类中定义一个内部类 Inner和局部类 Local,内部类 Inner 和局部类 Local 的任务都是显示出外部类中的数组元素,然后求出这些数组元素的平均值。 请按模版要求,将代码补充完整。class Outer {private int data[];Outer(int x[]) {data = x;}void checkInner() {Inner innerObj = new Inner();【补充代码】 /.原创 2020-10-20 01:13:44 · 3039 阅读 · 0 评论 -
1. Cylinder 类继承 Circle 类,请按注释补充相关代码。
实验六 继承与抽象类实验目的1.掌握类的继承的语法。2.掌握子类对象中调用父类定义的成员方法。3.掌握在子类中实现父类中的抽象方法。主要仪器设备及耗材安装了 JDK1.8 的 PC 一台实验内容1. Cylinder 类继承 Circle 类,请按注释补充相关代码。import java.util.Scanner;class Circle { private final static double PI = 3.141596; public double radius; publ.原创 2020-10-12 09:38:29 · 1768 阅读 · 0 评论 -
Java内存分配
栈内存+堆内存堆内存用来存放由new运算符创建的数组或对象,在堆中分配的内存,由java虚拟机的垃圾回收器来自动管理。在堆中创建了一个数组或对象后,同时还在栈中定义一个特殊的变量,栈中的这个变量的取值等于数组或对象在堆内存中的首地址,栈中的这个变量就成了数组或对象的引用变量。引用变量实际上保存的就是对象或数组在堆内存中的首地址,也称为对象的句柄。引用变量在程序运行到其作用域之外后被释放。而数组或对象本身在堆内存中分配,即使程序运行到使用new运算符创建数组或对象的语句所在的代..原创 2020-10-05 20:29:27 · 289 阅读 · 0 评论 -
循环中的跳转语句
break语句从它所在的分支语句或循环体中跳转出来,执行分支或循环体后面的语句。多用在两种情况:①使用switch语句终止某个case;②使一个循环立即结束;原创 2020-10-05 17:52:52 · 1226 阅读 · 0 评论 -
通过对现实中手机进行分析,设计一个手机类 Phone。该类包括手机的基本属性(如: 品牌 brand、型号 type、操作系统 os 等)和基本功能(如:显示设备信息 inf
实验五 类与对象实验目的1.熟练掌握如何自定义一个类。2.熟练掌握如何创建对象以及调用对象的成员变量和成员方法。3.掌握方法调用时参数的传递。主要仪器设备及耗材安装了 JDK1.8 的 PC 一台实验内容1. 通过对现实中手机进行分析,设计一个手机类 Phone。该类包括手机的基本属性(如:品牌 brand、型号 type、操作系统 os 等)和基本功能(如:显示设备信息 info( )、拨号 call( String number)等))。另外,编写类 TestPhone 创建手机类.原创 2020-09-29 01:09:19 · 7938 阅读 · 0 评论 -
2. String 类的常用方法练习。阅读分析下面程序,把程序中的代码补充完整,并查看结果
2. String 类的常用方法练习。阅读分析下面程序,把程序中的代码补充完整,并查看结果public class StringExample {public static void main(String args[]) {String s1 = new String("you are a student"),s2 = new String("how are you");if (【补充代码】) // 使用 equals 方法判断 s1 与 s2 是否相同{System.out.printl.原创 2020-09-21 12:18:25 · 2252 阅读 · 0 评论 -
1. 给定了一个包含重复元素的数组(附题后),请编写程序找出数组中那些元素有重复, 并记录其重复了几次: public class ArrayExample { public static void
1. 给定了一个包含重复元素的数组(附题后),请编写程序找出数组中那些元素有重复, 并记录其重复了几次: public class ArrayExample { public static void main(String[] args) { int array={1,6,3,6,7,9,8,6,7,8,8,0,4,5,2,9}; 【补充代码】 }package com.temp;import java.util.ArrayList;import java.util.HashMap;impor原创 2020-09-21 09:40:23 · 869 阅读 · 1 评论 -
思考题: 1.分析下面的程序,判断下列程序是否能正常运行,输出结果是多少?
思考题: 1.分析下面的程序,判断下列程序是否能正常运行,输出结果是多少?class Sum {public static void main(String args[]) {int i=1,n=10,s=0;while (i<=n)s = s + i;System.out.println("s="+s);}}‘因为i没有自增,永远是1,永远小于10,因此一直在死循环,虽然不会报错,但是总是不会结束,不会报错没有内存溢出是因为java有gc();package com..原创 2020-09-14 08:40:23 · 1251 阅读 · 0 评论 -
1、编写程序,实现按 5 度的增量打印出一个从摄氏温度到华氏温度的转换表。转换公式
package com.temp;/** * @Author lanxiaofang * @email 983770299@qq.com * @date 2020/09/14 08:10 */public class CToF { public static void main(String[] args) { int c1 = 0; for(int i = 1; i < 10; i++){ double f ...原创 2020-09-14 08:36:49 · 1483 阅读 · 0 评论 -
2. 编写程序,求 x+xx+xxx+……(例如:8+88+888+……)前 n 项之和。x 和 n 的值由 用户从键盘输入。
2. 编写程序,求 x+xx+xxx+……(例如:8+88+888+……)前 n 项之和。x 和 n 的值由 用户从键盘输入。package com.temp;import java.util.Scanner;/** * @Author lanxiaofang * @email 983770299@qq.com * @date 2020/09/14 08:15 */public class SumOfX { public static void main(String[]原创 2020-09-14 09:24:52 · 3602 阅读 · 1 评论 -
零基础学Java:导包报错 The type javax.swing.JFrame is not accessible
The type javax.swing.JFrame is not accessible一朋友报这个错,我看了下她的文件,看了下她的文件下多了个一般不常用的文件module-info.java一问,说是她创建项目的时候自动生成的,如果不要用到(一般初学不会用到),只要删掉这个文件即可。然后我看了下,果然创建项目的时候有个勾选,如果不要用到一般初学不会用到),只要不勾即可。(也就是创建项目的时候不要直接FInish,而是next,在next后的界面中有这个选项)下面来分析一下..原创 2020-09-13 16:26:53 · 6974 阅读 · 14 评论 -
scanner.nextLine()和scanner.next();的区别
scanner.nextLine() 和 scanner.next(); 的区别查看 scanner.nextLine() 的源码,可以发现是一次性读完的/** * Advances this scanner past the current line and returns the input * that was skipped. * * This method returns the rest of the current line, excludin原创 2020-09-07 11:20:31 · 995 阅读 · 0 评论 -
使用Scanner类,从键盘输入一个英文字符串,将其转换为全部大写字母后输出,如果输入的字符串是“END”则程序终止运行。
2.使用Scanner类,从键盘输入一个英文字符串,将其转换为全部大写字母后输出,如果输入的字符串是“END”则程序终止运行。(提示:字符串转大写字母可以调用toUpperCase()方法,具体使用形式如:str2=str1.toUpperCase();)文件命名和路径情况:package com.design;import java.util.Scanner;/** * @Author lanxiaofang * @email 983770299@qq.com * @da.原创 2020-09-07 11:21:14 · 2585 阅读 · 2 评论 -
使用 JOptionPane 类的 showInputDialog()和 showMessageDialog()两个方法,实 现一个华氏温度和摄氏温度相互转换的程序。
1. 使用 JOptionPane 类的 showInputDialog()和 showMessageDialog()两个方法,实 现一个华氏温度和摄氏温度相互转换的程序。转换公式如下:F = (9/5)*C+32;两个方法的使用方法如下:文件命名和路径情况:package com.design;import javax.swing.*;/** * @Author lanxiaofang * @email 983770299@qq.com * @date 2020/09原创 2020-09-07 10:51:58 · 2276 阅读 · 0 评论 -
调用scanner.close()报错Java.io.Exception: Stream closed; 的原因分析
package com.temp;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.Scanner;public class Main { public static void main(String[] args){ // TODO Auto-generated method stub System.out.println("this is the first te.原创 2020-09-06 11:05:26 · 682 阅读 · 1 评论 -
零基础学Java:Java开发工具 Eclipse 安装,创建第一个Java项目,以及Eclipse的一些基础使用
一、下载https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2020-06/R/eclipse-inst-win64.exe&mirror_id=1142二、安装Eclipse三、开始使用Eclipse,并创建第一个Java项目src 鼠标右键 -- New --Class四、一些基础操作1、字体大小修改(咋一看感觉这字体太小了,看起来不舒服).原创 2020-09-01 19:55:38 · 593 阅读 · 0 评论 -
零基础学Java:JDK 安装与环境变量配置 最新jdk14.0.2安装
--请先查看电脑基本信息,再根据电脑系统下载对于的JDK:此电脑--属性win10 x64位一、Oracle官网下载JDK(Java SE Development Kit 14.0.2)(我选择EXE安装包)1、https://www.oracle.com/java/technologies/javase-jdk14-downloads.html2、接受协议再下载二、JDK安装1、运行程序2、开始进入安装程序点击查看 JDK 14...原创 2020-09-01 13:24:17 · 898 阅读 · 1 评论 -
Java 语言的特点
1、简洁有效Java去除了C++中不常用且容易出错的地方,如指针、结构体等概念,没有预处理器、运算符重载、虚拟基础类等复杂的功能。Java增加了自动内存回收机制,这使得程序员不用自己释放占用的内存,因此不会引起因内存混乱而导致的系统崩溃。2、纯面向对象的编程语言Java语言的设计集中于类、对象和接口,提供了简单的类机制及动态的接口模型,使其更加契合“面向对象”的软件工程开发理论。...原创 2019-12-10 23:45:22 · 399 阅读 · 0 评论 -
java.lang.IllegalArgumentException: Unknown return value type: java.lang.Integer] with root cause
java.lang.IllegalArgumentException:Unknown return value type: java.lang.Integer] with root cause IllegalArgumentException是非法参数异常,报这个异常说明传入的参数违反了一个方法要求的某些特性。只要在Controller层,加上@ResponseBody注...原创 2019-12-27 18:00:15 · 2058 阅读 · 0 评论 -
IDEA中手把手创建SSM项目
一、创建Project1、打开IDEA , FIle--右键NEW --PROJECT2、34、添加archetypeCatalog属性的原因:IDEA根据maven archetype的本质,其实是执行mvn archetype:generate命令,该命令执行时,需要指定一个archetype-catalog.xml文件。5 、之后选择要存放项目的位...原创 2022-05-12 20:38:42 · 5890 阅读 · 1 评论 -
阿里java手册总结----命名风格
(红色例子是反例 绿色例子是正例)一、强制要求1、代码中的命名均不能以下划线或美元符号开始(_age $age),也不能以下划线或美元符号结束(age_ $age)。2、代码中的命名严禁使用拼音与英文混合的方式(nianling),更不允许直接使用中文的方式(年龄)。 说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式 也要避免采用。3、类名使...原创 2018-03-06 16:54:05 · 418 阅读 · 0 评论 -
安装TortoiseSVN,Intellij IDEA 集成 TortoiseSVN ,以及IDEA中集成TortoiseSVN找不到svn.exe 解决
1、下载TortoiseSVN下载路径 :http://download.csdn.net/download/c_lanxiaofang/102646122、选择电脑对应的位数直接双击安装TortoiseSVNa、点击NEXTb、(由于我这是第二次安装,进行示范所有有三个选择,选第一个)c、第一次进入,第2个是一个X,这里要记得选(选择Will b...原创 2018-03-01 14:14:51 · 22335 阅读 · 4 评论 -
SSM框架中乱码----加乱码过滤器
有时候虽然数据库的编码和jsp的编码都是utf-8,但是在页面上输出的数据还是会乱码,其实解决这个问题的办法很简单:在web.xml中加一段代码就好<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http:/...原创 2018-02-12 09:46:39 · 2908 阅读 · 0 评论 -
myeclipse中的jsp页面pageEncoding怎样设置默认编码为“UTF-8”
1、打开myeclipse,找到Window2、找到window的preference3、在框中输入jsp,回车4、在encoding中找到“ISO 10646/Unicode(UTF-8)”,(接着IANA也会改变为UTF-8)5、点击下方的Apply应用6、新建一个.jsp文件,于是pageEncoding中默认即为“UTF-8”了...原创 2018-02-11 14:46:43 · 1806 阅读 · 0 评论 -
并行的优势和带来的问题
多线程的优势:可并行处理任务,减少单个任务的等待时间;线程较进程开销更小;线程间可共享资源;多核情况下可充分利用CPU资源。发挥多处理器的强大性能,提升资源利用率以及系统的吞吐率。提供更好的GUI交互体验(如腾讯视频可边下边播)充分利用服务器硬件资源;提高服务吞吐量、降低响应时间;分布式系统;资源的争用、可伸缩性;多线程并发内存消耗比较少;每个线程需要一个Thread stack保存线程场景,Th...原创 2018-02-11 13:16:36 · 8239 阅读 · 0 评论 -
为什么需要并发(并行)
1、业务需求2、性能需要3、可简化任务调度4、并行程序在多核心CPU有优势:a、比如因为IO操作遇到了阻塞,CPU可以转去执行其他线程,这时并发的优点就显示出来了:更高效的利用CPU,提高程序的响应速度。b、java线程机制是抢占式的,会为每个线程分配时间片。c、由于I/O等待,CPU较空闲,通过多进程/多线程让CPU忙起来,提升处理速度。通过多路复用,利用I/O等待的时间进行运算,让CPU干活,...原创 2018-02-11 11:38:51 · 2413 阅读 · 0 评论 -
数据库Date数据类型在页面展示时如何数据类型转换成String类型
有个很坑的事,mysql数据库,某个字段的字段类型是Date ,在实体类中的属性类型也是Date,于是在页面输出时的格式不好看。1、转换方法一:SimpleDateFormat dfymdhms = new SimpleDateFormat("yyy-MM-dd hh:mm:ss");Date dfymdhmsDate = dfymdhms.parse(dateStr);于是原创 2018-01-29 19:09:00 · 2752 阅读 · 0 评论 -
JQGrid中使用prmNames自动排序无效,取消某列排序
前段时间在使用JQGrid的时候,遇到排序无效,当时是根据时间排序的无效。有两种情况下是会排序无效的:1、根据登录时间排序无效数据传输是的.js文件 colModel 的name与数据库表中的列名不一样的话是会排序无效的,解决的办法就是在对应的label 中加index = "对应的表中的列名"{label:'登录时间',name:'LoginTime',index:"login_ti原创 2018-01-09 17:55:55 · 3056 阅读 · 0 评论 -
报错:java.lang.NullPointerException: target is null for method trim
### Error querying database. Cause: java.lang.NullPointerException: target is null for method trim### Cause: java.lang.NullPointerException: target is null for method trim org.mybatis.spring.MyBa原创 2018-01-09 11:15:26 · 12505 阅读 · 0 评论