
java
文章平均质量分 56
LQSLM
基本学习。
展开
-
输出错误信息与调试信息
package 基本语法;public class PrintErrorAndDebug {public static void main(String[] args) {System.out.println("main()方法开始运行了。");//输出错误信息System.err.println("在运行期间手动输出一个错误信息。");System.err.println原创 2017-03-07 23:20:17 · 332 阅读 · 0 评论 -
I/O2—File类
File类是java.io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的一些方法,实现创建、删除、重命名等操作。File类的对象主要用来获取文件本身的一些信息,如文件所在的目录、文件长度、文件读写权限等。数据流可以将数据写入到文件中,文件也是数据流最常用的数据媒体。文件的创建与删除可以使用File类创建一个文件对象。通常使用以下3原创 2017-03-22 15:08:02 · 501 阅读 · 0 评论 -
串的模式匹配算法1——Brute-Force(BF)算法
我们来看BF算法(Brute-Force,最基本的字符串匹配算法),BF算法的实现思想很简单:我们可以定义两个索引值i和j,分别指示主串str和子串substr当前正待比较的字符位置,从主串str的第startindex个字符起和子串substr的第一个字符比较,若相等,则继续逐个比较后续字符,否则从主串str的下一个字符起再重新和子串substr的字符进行比较,重复执行,直到子串substr中的原创 2017-04-07 16:36:50 · 1094 阅读 · 0 评论 -
串的顺序存储结构
MyString 类package 串;public class MyString {private char[] value;//私有成员变量,字符数组private int count;//私有成员变量,字符个数/** 构造函数1*/public MyString(){value=new char[0];count=0;}/** 构造原创 2017-04-07 12:10:57 · 1569 阅读 · 0 评论 -
ClassLoader知识
(1)ClassLoader基本概念与C或C++编写的程序不同,Java程序并不是一可执行文件,而是由许多独立的类文件组成的,每个文件对应一个Java类。此外,这些类文件并非全部装入内存,而是根据程序需要逐渐载入。ClassLoader是JVM实现的一部分,ClassLoader包括bootstrap classloader(启动类加载器),ClassLoader在JVM运行的时候加载Java原创 2017-03-21 19:31:37 · 418 阅读 · 0 评论 -
顺序循环队列
队列的基本概念队列(简称队)是一种特殊的线性表,队列的数据元素以及数据元素间的逻辑关系和线性表完全相同,差别就是线性表允许在任意位置插入和删除,而队列只允许在一端进行插入操作而在另一端进行删除操作。队列中允许进行插入操作的一端称为队尾,允许进行删除的一端称为队头。操作集合(1)入队列append(obj):把数据元素插入队尾;(2)出队列delete():把队头原创 2017-03-21 17:04:30 · 1352 阅读 · 0 评论 -
java字符串基本操作
package string;public class S_tring {//设置静态全局变量static String string="abcdefg hijklmn opqrst uvwxyz";public static void Join(){//字符串拼接String s1=new String("abcdefg");String s2=new Str原创 2017-03-06 13:09:59 · 410 阅读 · 0 评论 -
链式堆栈
链式堆栈的存储结构如同单链表结构,每个结点会有俩个区域,一个数据元素区(element),用来存放数据元素;另一个是指针区(next),用来构造数据元素之间的关系。堆栈有两端:栈顶top,参与各种对堆栈的操作;另一端是栈底。我们把链表的head端作为栈顶,另一端作为栈底。这样插入和删除栈顶元素时,无须遍历整个链表所以时间复杂度为O(1)。由于堆栈的入栈和出栈都是固定在栈顶进行的,不原创 2017-03-20 18:51:50 · 793 阅读 · 0 评论 -
hashCode与对象equals之间的使用
hashCode与对象之间的关系:如果两个对象的hashCode不相同,那么这两个对象肯定也不同。如果两个对象的hashCode相同,那么这两个对象有可能相同,也有可能不同。总结一句:不同的对象可能会有相同的hashCode;但是如果hashCode不同,那肯定不是同一个对象。代码举例: 1 public class StringTest { 2 3转载 2017-03-20 17:19:04 · 394 阅读 · 0 评论 -
I/O1——输入/输出流
流是一组有序的数据序列,根据操作的类型,可以分为输入流和输出流两种。I/O(Input/Output,输入/输出)流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。Java由数据流处理输入/输出模式,程序从指向源的输入流中读取源中的数据。源可以是文件、网络、压缩包或者其他数据源。(输入模式)输出流的指向是数据要到达的目的地,程序通过向输出原创 2017-03-22 14:06:05 · 520 阅读 · 0 评论 -
I/O3——文件输入/输出流
Java程序运行期间,大部分数据都在内存中进行操作,当程序结束或关闭时,,这些数据就会消失。如果需要将数据永久保存,可使用文件输入/输出流与指定的文件建立连接,将需要的数据永久保存到文件中。FileInputStream类FileInputStream类是继承了InputStream类,该类提供了基本的把文件中信息写入到数据流的能力。FileInputStream类常用的构造方法如下:原创 2017-03-22 15:50:24 · 526 阅读 · 0 评论 -
将一个整数型字符串转换为一个整数
package com.utl.string;/* * 将一组整数字符串转换为整数 * 例:"234"转换为整数型234 * 分析:涉及到许多问题,例如非法输入,有正负号,是否为空字符串等等 * */import java.util.Scanner;public class Strtoint {public static void main(String[] ar原创 2017-05-21 10:32:36 · 3713 阅读 · 0 评论 -
由两个栈组成队列
/* * question:编写一个类,用两个栈实现队列,支持队列的基本操作(add、poll、peek) * time:2017/4/1 * name:lqs */package stack1;/* *stackPush:压入栈 *stackPop:弹出栈 */import java.util.*;public class TwoStacksChang原创 2017-04-02 21:37:44 · 477 阅读 · 0 评论 -
设计一个有getMin功能的栈
题目:实现一个特殊的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。要求:1、pop、push、getMin操作的时间复杂度都是O(1) 2、设计的栈类型可以输用现成的栈结构方案一:代码实现Mystack:/* * time:2017/4/1 * name:lqs */package stack1;import java原创 2017-04-02 20:47:20 · 409 阅读 · 0 评论 -
反射1——Class类与Java反射
通过Java反射机制,可以在程序中访问已经装载到JVM中的Java对象的描述,实现访问、检测和修改描述Java对象本身信息的功能。Java反射机制的功能过十分强大,在java.lang.reflect包中提供了该功能过的支持。java.lang.reflect包的描述提供类和接口,以获得关于类和对象的反射信息。在安全限制内,反射允许编程访问关于加载类的字段、方法和构造方法的信息,并允许原创 2017-03-23 12:10:55 · 890 阅读 · 2 评论 -
文件内容复制
package FileIO;import java.io.*;import java.util.*;public class CopyFileDemo {public static void main(String[] args) {File source=new File("demo.txt");File objfile=new File("objfile.txt"原创 2017-03-23 08:53:23 · 476 阅读 · 0 评论 -
I/O4——FileReader和FileWriter类
前一篇博文讲述了FileInputStream类从文件读出信息,FileOutputStream类向文件写入信息,但是存在一点不足,即这两个类都只是提供了对字节或字节数组的读取方法。由于汉字在文件中占用两个字节,如果使用字节流,读取不好可能会出现乱码现象,此时采用字符流Reader或Writer类即可避免这种现象。FileReader和FileWriter字符流对应了FileInputStre原创 2017-03-22 23:41:34 · 424 阅读 · 0 评论 -
栈与堆的区别
当一个人开始学习Java或者其他编程语言的时候,会接触到堆和栈,由于一开始没有明确清晰的说明解释,很多人会产生很多疑问,什么是堆,什么是栈,堆和栈有什么区别?更糟糕的是,Java中存在栈这样一个后进先出(Last In First Out)的顺序的数据结构,这就是java.util.Stack。这种情况下,不免让很多人更加费解前面的问题。事实上,堆和栈都是内存中的一部分,有着不同的作用,而且一原创 2017-03-20 17:01:25 · 424 阅读 · 0 评论 -
顺序堆栈
堆栈示意图堆栈进出原则先进后出数据集合堆栈的数据集合的元素可以表示为任意的类类型。操作集合(1)入栈push(obj):把数据元素obj插入堆栈;(2)出栈pop():出栈,删除的数据元素由函数返回;(3)取栈顶元素getTop():取当前栈顶的数据元素并有函数返回;(4)notEmpty():若栈非空则返回true,否则返回false.Stack接原创 2017-03-20 16:02:26 · 1234 阅读 · 0 评论 -
为新员工分配部门(初次使用哈希码)
package 基本语法;import java.util.Scanner;public class Division {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.println("请输入新员工的姓名:");String name=scan.n原创 2017-03-08 21:21:00 · 590 阅读 · 0 评论 -
验证登录信息的合法性
package 基本语法;import java.util.Scanner;public class CheckLogin {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.println("请输入登陆用户名:");String str1原创 2017-03-08 01:20:43 · 714 阅读 · 0 评论 -
判断某一年是否是闰年
package 基本语法;import java.util.Scanner;public class LeapYear {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.println("请输入一个年份:");long year=scan.nex原创 2017-03-08 01:12:43 · 770 阅读 · 0 评论 -
实现两个整数变量的互换(不借助其他变量)
package 基本语法;import java.util.Scanner;public class VariableExchange {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.println("请输入变量A的值:");long A=原创 2017-03-08 01:05:15 · 518 阅读 · 0 评论 -
用三目运算符判断一个数的奇偶性
package 基本语法;import java.util.Scanner;public class ParityCheck {public static void main(String[] args) {Scanner scan=new Scanner(System.in);//创建输入扫描器System.out.println("请输入一个整数:");long n原创 2017-03-08 00:50:56 · 2624 阅读 · 0 评论 -
加密可以这样简单
package 基本语法;import java.util.Scanner;import javax.sound.midi.Synthesizer;public class Example {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.p原创 2017-03-08 00:34:46 · 334 阅读 · 0 评论 -
自动类型转换与强制转换
package 基本语法;public class TypeConversion {public static void main(String[] args) {byte b=127;char c='w';short s=23561;int i=33333;long l=400000l;float f=34.354f;double d=34578.753;原创 2017-03-08 00:24:24 · 337 阅读 · 0 评论 -
从控制台接收输入字符
package 基本语法;import java.util.Scanner;public class InputCode {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);//创建输入流扫描器System.out.println("请输入一串字符:");//提示原创 2017-03-07 23:31:45 · 776 阅读 · 0 评论 -
用Switch语句判断消费折扣问题
package 基本语法;import java.util.Scanner;public class ProductPrice {public static void main(String[] args) {float money;Scanner scan=new Scanner(System.in);System.out.println("输入累计消费金额:原创 2017-03-08 21:35:09 · 3973 阅读 · 0 评论 -
使用switch与自增运算符循环遍历数组
package 基本语法;public class ErgodicArray {public static void main(String[] args) {int []aves=new int[]{1,2,3,4,5,6,7,8,9};int dex=0;System.out.println("使用switch与自增运算符循环遍历数组:");while(dex原创 2017-03-08 21:40:14 · 678 阅读 · 0 评论 -
将二位数组中的行列互换
package 数组;public class ArrayRowColumnSwap {public static void PrintArray(int arr[][]){for(int i=0;ifor(int j=0;j{System.out.println(arr[i][j]+" ");}System.out.println();}原创 2017-03-10 12:44:17 · 975 阅读 · 0 评论 -
顺序表
(1)SeqList 是类名,List是所实现的接口。该类有三个成员变量,其中listArray表示存储单元数据元素的数组,maxSize表示数组允许的最大数据元素个数,size表示数组中当前存储的数据元素个数。要求必须满足size(2)类的成员变量通常设计成private或默认访问权限。private访问权限只允许该类的成员变量函数访问;默认访问权限只允许该类的成员函数或同一包中的类成员函数原创 2017-03-19 22:24:55 · 772 阅读 · 0 评论 -
List集合
package com.lwz;import java.util.*; //导入包public class Gather {public static void main(String[] args) {Listlist=new ArrayList();//创建集合对象list.add("a");//向集合中添加元素list.add("b");list.add("c")原创 2017-03-19 10:01:45 · 304 阅读 · 0 评论 -
Collection接口常用方法
package com.lwz;import java.util.*; //导入包public class Muster {public static void main(String[] args) {Collectionlist=new ArrayListlist.add("a");//向集合添加数据list.add("b");list.add("c");l原创 2017-03-19 09:41:23 · 840 阅读 · 0 评论 -
将正方形矩阵顺时针转动90度
题目:给定一个n*n的矩阵,把这个矩阵调整成顺时针转动90度后的形式。例如:1 2 3 45 6 7 89 10 11 1213 14 15 16转动后:13 9 5 114 10 6 215 11 7 316 12 8 4要求:额外空间复杂度为O(1)源代码:package 数组和矩阵问题;pub原创 2017-03-18 20:29:18 · 1257 阅读 · 0 评论 -
foreach循环实例
package 基本语法;import java.awt.List;import java.util.ArrayList;public class UseForeach {public static void main(String[] args) {ArrayList list=new ArrayList();//创建ArrayList集合list.add("原创 2017-03-08 22:24:47 · 2118 阅读 · 0 评论 -
使用for九九乘法表
package 基本语法;public class MultiplicationTable {public static void main(String[] args) {for(int i=1;ifor(int j=1;j{System.out.println(j+"*"+i+"="+(j*i));}System.out.println();}原创 2017-03-08 22:00:42 · 365 阅读 · 0 评论 -
使用for循环输出杨辉三角
package 基本语法;public class YangHuiTriangle {public static void main(String[] args) {int triganle[][]=new int[8][];//创建二位数组for(int i=0;i//遍历二维数组第一层{triganle[i]=new int[i+1];//初始化第二层数组的原创 2017-03-08 21:56:35 · 1650 阅读 · 0 评论 -
求链表中倒数第K个结点
package 链表问题;/* * 求链表中倒数第K个结点 * */import java.util.*;public class Findk {public static void main(String[] args) {LinkedList list=new LinkedList();Scanner scan=new Scanner(System.in);原创 2017-05-21 11:25:52 · 454 阅读 · 0 评论