
JAVA
欧启鑫
这个作者很懒,什么都没留下…
展开
-
PrintStream将输出语句的地方转移到TXT文件夹
控制台中输出结果:文件夹中输出结果:原创 2020-08-06 14:35:08 · 206 阅读 · 0 评论 -
将对象存储到集合当中,在输入到文件里
ArrayList<personList> list = new ArrayList<>(); list.add(new personList("张三",18)); list.add(new personList("赵四",18)); list.add(new personList("王五",18)); ObjectOutputStream oos = new ObjectOutputStream(new Fil..原创 2020-08-06 14:29:40 · 397 阅读 · 0 评论 -
Serializable标记接口、ObjectOutputStream序列化 将对象写入文件中、ObjectInputStream反序列化、InvalidClassException异常
主函数 ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("IO\\person.txt")); oos.writeObject(new person("迪丽热巴",18)); oos.close();类方法public class person implements Serializable { private String name; privat原创 2020-08-06 10:28:26 · 197 阅读 · 0 评论 -
OutputStreamWriter编码转码器
OutputStreamWriter ow = new OutputStreamWriter(new FileOutputStream("IO\\utf-8.txt"),"UTF-8"); ow.write("我爱你"); ow.flush(); ow.close();"UTF-8"声明调用的编码,不写也默认为UTF-8输出结果:为中文IDea中默认编码为UTF-8..当将UTF-8改为GBK(中文编码)OutputStreamWriter ...原创 2020-08-05 22:53:04 · 1064 阅读 · 0 评论 -
项目练习——文本排序
BufferedReader bis = new BufferedReader(new FileReader("IO\\出师表.txt")); BufferedWriter bos = new BufferedWriter(new FileWriter("IO\\出师表正序.txt")); HashMap<String,String> map = new HashMap<>(); String line; whi..原创 2020-08-05 20:29:10 · 239 阅读 · 0 评论 -
利用BufferedOutputStream提高字节输出输入流和复制效率
输入流 FileOutputStream fos = new FileOutputStream("IO\\a.txt"); BufferedOutputStream bos = new BufferedOutputStream(fos); bos.write("想你想到疯了".getBytes()); bos.flush();刷新,以便写入 bos.close();释放内存..输出流...原创 2020-08-05 17:07:48 · 414 阅读 · 0 评论 -
Properties集合方法将内存中临时Map集合的数据存储到硬盘中并读取
Properties prop = new Properties(); prop.setProperty("迪丽热巴","18"); prop.setProperty("马儿扎哈","21"); prop.setProperty("赵丽颖","31"); FileWriter fw = new FileWriter("IO\\a.txt"); prop.store(fw,"我爱你"); fw....原创 2020-08-05 15:19:30 · 256 阅读 · 0 评论 -
处理IOStream异常
public static void main(String[] args){ FileWriter fw = null; try { fw = new FileWriter("IO1\\a",true); } catch (IOException e) { System.out.println(e); }finally { if(fw != null){ ...原创 2020-08-05 11:52:52 · 1159 阅读 · 0 评论 -
文件的复制FileIntput\OutputStream、BufferedWriter
FileInputStream fis = new FileInputStream("IO\\海尔恰饭.mp3"); FileOutputStream fos = new FileOutputStream("IO\\a1.mp3"); long s = System.currentTimeMillis(); byte[] bytes = new byte[1]; int len = 0; while ((le...原创 2020-08-05 09:35:12 · 150 阅读 · 0 评论 -
FileInpuStream、BufferedReader、InputStreamReader
int len = 0; while ((len = fis.read()) != -1){ fis.read(); }逐一将文档中的字符转化为字节输出每识别一个字节光标往下移动一位识别到最后一位时输出-1.文件夹内容abc输出结果:97,98,99,...原创 2020-08-04 22:37:20 · 137 阅读 · 0 评论 -
FileOutputStream方法创建文件并写入数值
..输出结果为:100ABCD该方法通过ASCII转换输入的字符整形输入负数时将会转化为中文输出结果为:100ABCDE烤紻E..从数组中输入部分字节..直接输入想要的字符串输出的字节数组为:[-26, -120, -111, -25, -120, -79, -28, -67, -96]文件夹中显示:我爱你...原创 2020-08-04 17:04:59 · 1813 阅读 · 0 评论 -
用Lambda表达式来优化简写File文件过滤器
主函数 public static void main(String[] args) { File f1 = new File("D:\\FA\\JAVAspace\\FightingLangOwner\\Demo\\src\\DemoFile"); getFileName(f1); }实现类 public static void getFileName(File f1){ 方法① 简化前: File原创 2020-08-04 16:32:50 · 364 阅读 · 0 评论 -
FileFilter过滤器的使用方法
过滤器原理 public static void main(String[] args) { File f1 = new File("D:\\FA\\JAVAspace\\FightingLangOwner\\Demo\\src\\DemoFile"); getFileName(f1); } public static void getFileName(File f1){ File[] arrFile = f1.listFil原创 2020-08-03 19:46:04 · 439 阅读 · 0 评论 -
使用递归对文件夹进行遍历
public static void main(String[] args) { File f1 = new File("D:\\FA\\JAVAspace\\FightingLangOwner\\Demo\\src\\DemoFile"); getFileName(f1); } public static void getFileName(File f1){ File[] arrFile = f1.listFiles(); ...原创 2020-08-03 16:34:08 · 217 阅读 · 0 评论 -
list、listFiles遍历文件夹
list File f1 = new File("D:\\FA\\JAVAspace\\FightingLangOwner\\Demo\\src\\DemoFile"); String[] arr = f1.list(); for (String a : arr) { System.out.println(a); }输出结果:..listFilesFile f1 = new File("D:\\FA\\JA原创 2020-08-03 14:38:23 · 404 阅读 · 1 评论 -
File文件、文件夹的创建以及删除
createNewFile File file = new File("D:\\FA\\JAVAspace\\FightingLangOwner\\Demo\\src\\DemoFile\\123.txt"); boolean f1 = file.createNewFile(); System.out.println(f1);在绝对路径下创建一个文件,并返回布尔值..mkdirnew File("src\\DemoFile\\111").mkdir原创 2020-08-03 14:18:32 · 275 阅读 · 0 评论 -
Lambad表达式返回有参数返回值
Person[] arr = { new Person("杨颖",28), new Person("赫本",99), new Person("明日花",25) }; /*Arrays.sort(arr,new Comparator<Person>() { @Override public int comp...原创 2020-08-01 11:43:53 · 190 阅读 · 0 评论 -
多线程中的等待与唤醒,wait、notify
Object obj = new Object(); new Thread(){ @Override public void run() { while(true){ synchronized (obj){ System.out.println("告知老板包子数量和种类"); ...原创 2020-07-31 16:06:58 · 152 阅读 · 0 评论 -
synchronized锁升级版本——Lock锁
创建对象Lock l = new ReentrantLock();Lock是ReentrantLock接口的实现类 l.lock(); if(ticket > 0){ try{ Thread.sleep(10); System.out.println(Thread.currentThread().getName() + "-->正在卖出第" + ticket-- +"张票");原创 2020-07-31 14:30:38 · 144 阅读 · 0 评论 -
synchronized对象锁,保证线程执行的安全
首先创建锁对象Object obj = new Object();将锁对象放入锁方法中中去synchronized (obj){ System.out.println(name + "正在卖" + paper.remove(i++) + "号票"); }当多个线程同时执行时先拿到锁对象的线程可以进入同步代码块中去执行代码没有抢到锁对象的线程则阻塞停止。.当一个线程运行完毕之后,归还锁对象下一个下称抢到则运行.这样做的好处是保证原创 2020-07-31 11:46:59 · 151 阅读 · 0 评论 -
Thread.sleep方法的使用,使得字符产生停顿
String word = "生而为人,我很抱歉"; char[] ch = word.toCharArray(); for(char c : ch){ System.out.print(c); try{ Thread.sleep(1000); }catch (InterruptedException e){ e.pri..原创 2020-07-31 11:41:19 · 148 阅读 · 0 评论 -
Thread类当中,获取正在运行的线程名称方法,
创建类方法getname@Override public void run(){ String name = getName(); System.out.println(name);}主方法运行 MyThread mt = new MyThread(); mt.start(); new MyThread().start(); new MyThread().start();最后输出结果..类方法中另原创 2020-07-31 08:47:56 · 373 阅读 · 0 评论 -
Thread类中start方法的调用(多线程)
主函数 MyThread mt = new MyThread(); mt.start(); for(int i =0; i<20 ; i++){ System.out.println("main:" + i); }MyThread子类public class MyThread extends Thread { public MyThread() { } public void原创 2020-07-30 21:24:58 · 406 阅读 · 0 评论 -
自定义异常报错
public class Demo03 { static String[] usernames = {"张三", "李四", "王五"}; public static void main(String[] args) throws RegisterException { String logicname = new Scanner(System.in).next(); checkUsername(logicname); } public原创 2020-07-30 20:26:13 · 292 阅读 · 0 评论 -
List、Set、Map的of用法
of创建一个不可修改的集合想往里注入元素时,会报错..往Set和Map中初始化元素有重复时,也会报错.同样的用of不能再添加其他元素原创 2020-07-30 11:41:44 · 974 阅读 · 0 评论 -
LinkedHashMap、Hashtable
LinkedHashMap LinkedHashMap<String,Integer> link = new LinkedHashMap<>(); link.put("a", 11); link.put("b", 22); link.put("d", 44); link.put("a", 55); link.put("c", 33); System.out原创 2020-07-30 10:22:50 · 131 阅读 · 0 评论 -
用自定义类作为键输入
Map<person,String> map = new HashMap<>(); map.put(new person("迪丽热奶",18), "上海"); map.put(new person("杨颖",20), "西安"); map.put(new person("古力娜扎",21), "新疆"); map.put(new person("赵丽颖",23), "成都"); map.p...原创 2020-07-30 09:57:20 · 158 阅读 · 0 评论 -
Map集合使用Keyset()、enterSet()方法提取key并遍历输出
map.put("迪丽热巴",18); map.put("杨颖",20); map.put("古力娜扎",21); map.put("赵丽颖",23); Set<String> set = map.keySet(); Iterator<String> it = set.iterator(); while(it.hasNext()){ String ...原创 2020-07-29 17:02:47 · 812 阅读 · 0 评论 -
Map接口中的常用方法
put(K key, V value)返回值:v存储键值对的时候,key不重复,返回值v是null存储键值对的时候,key重复,会使用新的value替换map中重复的value,返回被替换的value值 Map<String,String> map = new HashMap<>(); String v1 = map.put("李晨","范冰冰1"); System.out.println(v1); String v2原创 2020-07-29 16:33:15 · 254 阅读 · 0 评论 -
Collections一些常用的函数方法
ArrayList<String> list = new ArrayList<>(); Collections.addAll(list, "a","b","c","d","e","f"); System.out.println(list); Collections.shuffle(list); System.out.println(list);shuffle打乱数组中元素的顺序addAll往数组...原创 2020-07-29 14:26:58 · 236 阅读 · 0 评论 -
可变参数
可变参数底层是一个数组根据传递参数个数不同,会创建不同长度的数组,来存储参数 public static void main(String[] args) { int i = add(10,20,30,40,50,60,70); System.out.println(i); } public static int add(int...arr){ System.out.println(arr); System.out.原创 2020-07-29 14:13:30 · 123 阅读 · 0 评论 -
泛型通配符《?》
ArrayList<Object> list01 = new ArrayList<>(); list01.add("a"); list01.add(123); list01.add(true); printArray(list01); } public static void printArray(ArrayList<?> list){ Iterator&l...原创 2020-07-28 17:54:20 · 99 阅读 · 0 评论 -
自定义泛型、以及接口
主函数 GennerMethod.method(true); GennerMethod.method(123); GennerMethod.method("abc");方法 public static <S> void method(S s){ System.out.println(s); }<S>为自定义的泛型,可以传进来任何类型的数据类型...原创 2020-07-28 15:45:58 · 115 阅读 · 0 评论 -
迭代器原理,增强for循环
ArrayList<String> list = new ArrayList<>(); list.add("aaa"); list.add("ccc"); list.add("ddd"); list.add("eee"); for(String s:list){ System.out.println(s); }int[] arr = {1,2,3,4...原创 2020-07-28 14:13:54 · 76 阅读 · 0 评论 -
Collection创建集合以及iterator的使用方法
Collection<String> coll = new ArrayList<>(); coll.add("路飞"); coll.add("索隆"); coll.add("娜美"); coll.add("香吉士"); coll.add("乔巴"); coll.add("罗宾"); Iterator<String> it = coll.ite...原创 2020-07-28 11:48:56 · 177 阅读 · 0 评论 -
StringBuider使用方法
普通的创建字符串,每当创建一个的时候,就要多处一个内存空间,效率低下..而StringBuider相当于一个vector容器,只占用一个内存空间,可以无限往里添加字符,当空间不足时会自动扩容..常用方法介绍append str1.append("asd"); str1.append(132); str1.append(true);可以添加任何数据类型输出结果...原创 2020-07-27 21:39:19 · 166 阅读 · 0 评论 -
System类中arraycopy数组赋值的用法
int[] arr1 = {1,2,3,4}; int[] arr2 = {5,6,7,8,9}; System.arraycopy(arr1,0,arr2,0,2); System.out.println(Arrays.toString(arr2));输出结果:原创 2020-07-27 21:10:23 · 248 阅读 · 0 评论 -
SimpleDateFormat、、parse等DateAPI计算出生天数
System.out.print("请以yyyy-MM-dd格式输入您的出生年月:"); String birth = new Scanner(System.in).next(); long birthDate = new SimpleDateFormat("yyyy-MM-dd").parse(birth).getTime(); long difTime = new Date().getTime() - birthDate; ...原创 2020-07-27 19:36:23 · 142 阅读 · 0 评论 -
继承,重名变量的调用规则
父类public class Phone { public int num = 30;}子类public class person extends Phone{ private int num = 20; public void method(){ int num = 10; System.out.println(num); //10 System.out.println(this.num); //20原创 2020-07-23 16:08:36 · 103 阅读 · 0 评论 -
数学工具类Math
System.out.print(Math.abs(-2.5)); //2.5Math.abs获取绝对值..System.out.print(Math.ceil(3.1)); //4.0Math.ceil向上取整数..System.out.print(Math.floor(3.9)); //3.0Math.floor向下取整数..System.out.print(Math.round(3.6)); //4.0Math.round四舍五入..Math.PI取圆周率.原创 2020-07-23 15:35:27 · 104 阅读 · 0 评论