四月二十六java基础知识
1..对文件的随机访问:前面介绍的流类实现的是磁盘文件的顺序读写,而且读和写分别创建
不同的对象,java语言中还定义了一个功能强大、使用更方便的随机访问类RandomAcessFile
它可以实现文件的随机读写
2.RandomAcessFile类有两个构造方法用于创建RandomAcessFile类对象:
public RandomAcessFile(String name,String mode):以name来指定随机文件流对象
所对应的文件名。以mode表示对文件的访问模式
public RandomAcessFile(File file,String mode):以file来指定随机文件流对象所对应的
文件名,以mode表示对文件的访问模式
3.说明:访问模式mode表示创建的随机读写文件的操作状态。mode的取值如下
r:表示以只读方式打开文件
rw:表示以读写方式打开文件。使用该模式只用一个对象就可以同时实现读和写两种操作
4.RandomAcessFile类的所有方法都可能抛出IOException异常,所以利用它实现对
文件对象操作时应把相应的语句放在try语句块中,并配上catch语句块来处理可能产生
的异常
5.//在D盘中自动创建了一个file1.txt文件夹
FileWriter fw = new FileWriter("d:\\JAVA\\file1.txt");
6..fw.close();//在写入中最后面要加上close方法
7..Random r = new Random();
//random对象的参数是左闭右开区间[0,n-1),
//如果要求20-9999.则表示为int ran = r.nextInt(9980)+20;
for(int i =0;i<15;i++){
int ran = r.nextInt(9980)+20;
a[i] = ran;
}//产生15个20-9999个随机数
8..冒泡顺序:
for(int i = 0;i<a.length-1;i++){//冒泡排序不与自身比较所以只有14个比较
for(int j = 0;j<a.length-1-i;j++){
//j的范围由i来决定,i为前面已经比较的,按照冒泡每次排一个到最后
// j前面的不用比较
if(a[j]>a[j+1]){
int temp =a[j+1];
a[j+1] = a[j];
a[j] = temp;
}
}
}
9..冒泡逆序:
public static void main(String []args){
int []a = {1,2,5,7,9,3,4,6,8};
for (int i = a.length - 1; i >0; i--) {
//j的范围由i来决定,i为前面已经比较的,按照冒泡每次排一个到最后
// j前面的不用比较
for(int j = a.length-1;j >a.length+1-i;j--){
if(a[j-1]>a[j]){
int temp = a[j];
a[j] = a[j-1];
a[j-1] = temp;
}
}
}
总结:今天把输入输出流学完了,前面比较简单的应用,后面有点复杂有些还是没有明白
今天也把后面的习题做咯下,明白了简单的使用输入输出流写内容进文件,从文件读内容
也学会了如何产生和使用随机数
更重要的是有些明白了冒泡排序的原理,摸明白了这个排序其他的排序也不远了
四月二十六java基础知识的更多相关文章
- 二十六. Python基础(26)--类的内置特殊属性和方法
二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...
- 超详细的Java面试题总结(二)之Java基础知识篇
多线程和Java虚拟机 创建线程有几种不同的方式?你喜欢哪一种?为什么? 继承Thread类 实现Runnable接口 应用程序可以使用Executor框架来创建线程池 实现Callable接口. 我 ...
- Java学习笔记二十六:Java多态中的引用类型转换
Java多态中的引用类型转换 引用类型转换: 1.向上类型转换(隐式/自动类型转换),是小类型到大类型的转换: 2.向下类型转换(强制类型转换),是大类型到小类型的转换: 3.instanceof运算 ...
- 二十、Java基础--------IO流之其他对象
在上面两篇文章中介绍了IO体系并详细介绍了字节流以及字符流,本文主要是讲述操作文件的File.转化流.标准输入与输出.Properties.打印流以及序列流. File File英文为"文件 ...
- Java基础知识陷阱系列
Java基础知识陷阱系列 今天抽空把Java基础知识陷阱有关的文章汇总于此,便于大家查看. Java基础知识陷阱(一) Java基础知识陷阱(二) Java基础知识陷阱(三) Java基础知识陷阱(四 ...
- JAVA之旅(二十六)——装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片
JAVA之旅(二十六)--装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片 一.装饰设计模式 其实我们自定义re ...
- Java实习生常规技术面试题每日十题Java基础(六)
目录 1.在Java语言,怎么理解goto. 2.请描述一下Java 5有哪些新特性? 3.Java 6新特性有哪些. 4.Java 7 新特性有哪些. 5.Java 8 新特性有哪些. 6.描述Ja ...
- Java实习生常规技术面试题每日十题Java基础(二)
目录 1. JAVA 的反射机制的原理. 2.静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同? 3.如何将String类型转化成Number类型. 4.什 ...
- Bootstrap <基础二十六>进度条
Bootstrap 进度条.在本教程中,你将看到如何使用 Bootstrap 创建加载.重定向或动作状态的进度条. Bootstrap 进度条使用 CSS3 过渡和动画来获得该效果.Internet ...
- java 基础知识二 基本类型与运算符
java 基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...
随机推荐
- JS笔记(四):面向对象、异常处理
镇楼图 Pixiv:torino 六.JS中的面向对象 类(class) 博主视为你已拥有相关基础,这里不再赘述相关概念 类的语法如下,class在本质上是function,可以说class只是针对构 ...
- 搭建sftp服务器
sftp采用的是ssh加密隧道,安装性方面较ftp强,而且依赖的是系统自带的ssh服务,不像ftp还需要额外的进行安装 1. 创建sftp组 # groupadd sftp 创建完成之后使用ca ...
- 12.6linux学习第十三天
今天老刘开始讲第9第章使用ssh服务管理远程主机.第10章开了个小头. 9.1 配置网卡服务 9.1.1 配置网卡参数 截至目前,大家已经完全可以利用当前所学的知识来管理Linux系统了.当然,大家的 ...
- STL练习-排列2
Ray又对数字的列产生了兴趣: 现有四张卡片,用这四张卡片能排列出很多不同的4位数,要求按从小到大的顺序输出这些4位数. Input 每组数据占一行,代表四张卡片上的数字(0<=数字<=9 ...
- c# iis网站发布
c# iis网站发布 问题一: 有很多人在用服务器发布网站的时候,一直出现 "HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容",那么 ...
- Javaheima21
Java 学习内容 XML XML解析技术 XPath 设计模式 在有些业务场景下,存储数据或者传输数据给别人的时候,数据需要满足优点的规范进行组织 XML文件存储的数据需要提取出来 如何方便的在XM ...
- C#获取本地所有打印机名称
引用:using System.Drawing.Printing; 实现代码: List<string> PrintS = new List<string>(); foreac ...
- 通过右键菜单生成pyd
批处理 @echo off reg add "HKCR\AllFilesystemObjects\shell\构建PYTHON\command" /ve /t REG_SZ /d ...
- windows服务器部署mysql
一.Mysql安装教程就不上传了,百度很多的很详细的. 二.配置环境变量:我的电脑右键=>属性=>高级系统设置=>环境变量=>系统变量下找到Path,选中编辑, 变量值后面添加 ...
- 修改百分浏览器(centbrowser)、谷歌和火狐浏览器默认字体的方法
1,百分浏览器(centbrowser) 在浏览器的安装位置D:\Program Files\Cent Browser\User Data编辑文件custome.css,如果没有此文件可新建一个,内容 ...