java 笔记整理
在19寒假对java基础进行自学,总结的笔记整理出来
====================================================
排序查找
1.一共会比较数组元素个数-1 轮 //0到nums.length-1
2.每一轮,比较的次数比上次少1 //0到nums.length-i-1
3.如果前面一个数字大于后面一个数字 那么交换 //利用temp变量交换
1.先比较--数组元素--轮 //0到nums.length
2.再进行循环 i到最后 进行----数组元素-i-1---次 //i+1到nums.length
3.每次循环,交换i的值和minIndex的值
Arrays.sort(nums); //nums为数组 (可排列所有类型*需导入头文件*)
1.不停循环直到找到 将key与a[i]中间元素比较
case1 若key小于中间元素 继续在数组前半元素中查找 //if(key<a[mid]) high=mid-1; mid=(min+high)/2 ; 重复1
case2 若key大于中间元素 继续在数组后半元素中查找 //if(key>a[mid]) min=mid+1; mid=(min+high)/2 ; 重复1
case3 若key等于中间元素 找到并退出循环 //if(key=a[mid]) break;
System.out.println(cal.get(Calendar.YEAR); //当前年份
(cal.get(Calendar.MONTH)+1); //当前月份
cal.get(Calendar.DATE); //当前日期
cal.get(Calendar.DAY_OF_WEEK)); //当前星期
SECOND----------秒
hour---------------小时(12小时制
hour_of_day-------24小时制
day_of_week-------星期(从0开始 需要+1)
day_of_month------同DATE
day_of_year--------当前年的天数
AM_PM-------------0表示上午,1表示下午
System.out.println(date.toLocaleString()); //得到当前时间
(int)(Math.random() * 10000 )%10 //[0,9]
(int)(Math.random() * 10000 )%13 //[0,12]
Math.E //e=2.71828
Math.sin(角度) //正弦值 弧度
Math.cos(角度) //余弦值 弧度
Math.tan(角度) //正切值 弧度
Math.toRadians(degree) //以角度为单位的值转换为弧度
Math.toDegrees(radians) //以弧度为单位的值转换为角度
Math.asin(a) //反正弦 角度
Math.acos(a) //反余弦 角度
Math.atan(a) //反正切 角度
Math.ceil(x) //向上取整
Math.floor(x) //向下取整
Math.round(x) //四舍五入取整
Math.min/max //返回两数最小/最大值
Math.pow(a,b) //a的b次方
Math.abs //取绝对值
StringBuilder str2 //buffer安全于builder 但速度慢 主要用buffer
str1.append("*") //在str1后加上*(运行效率比字符串+快)
str1.deleteCharAt(index) //删除位置上的一个字符
装箱
Double num1=new Double("3.14");
Double num2=Double.valueOf(a); //两种装箱方法
Double num3=3.14; //自动装箱
a=num1; //自动拆箱
a=num2.doubleVaule(); //拆箱
Integer num2=100;
num1==num2
num1!=num2 //两者不等 因为两者超出范围后 系统重定义赋予地址
//两次都超出 赋予地址不同 因此比较时比较地址不同
Character.isAlphabetic(ch); //判断字符是否是字母
Character.isLetter(ch); //判断字符是否是文字(字母或者汉字)
Character.isDigit(ch) //判断字符是否是数字
Character.isLetterOrDigit(ch) //判断字符是否只含文字或数字
content.append(System.getProperty("line.separator"));//拼接一个系统默认分隔符
InputStream
OutputStream //读/写byte型文件
子类
FileinputStream (file1)
FileOutputStream (file1) //打开文件
ObjectInputStream //对其目标文件进行强转成要得到的类型
ObjectOutputStream //序列化和反序列化(实现Serializable接口)
BufferedInputStream //缓存流包装
Reader
Writer //打开文件
子类
BufferedWriter //缓冲字符输出流用其write()方法写入字符串
BufferedReader
InputStreamReader
OutputStreamWriter
PrintWriter //用append拼接字符串
子类
FileReader(path/file) //字符流读取文件
FileWriter(path/file) //写入文件
两者都实例化后方可:
1.先用Reader/FileinputStream(上方红记号)打开文件后
2.再用其他子类去对文件修改
String str1=new String(a); //将字符数组类型转换为字符串
char[] b;
b=str1.toCharArray(); //将字符串转换为字符数组
Scanner input=new Scanner(System.in)
JOptionPane.showMessageDialog(null, str); //将str以对话框的形式输出
参数1 对话框父窗体对象
参数2 对话框的提示信息
参数3 对话框的标题信息
参数4 对话框的消息类型(警告标志 0=不填等)
参数5 对话框中显示的图片对象
JOptionPane.showInputDialog(null, message, title, messageType, icon, selectionValues, initialSelectionValue)
参数6 对话框输入/选项(添加数组)
参数7 在参数6对话框中初始的信息
java 笔记整理的更多相关文章
- java笔记整理
Java 笔记整理 包含内容 Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...
- Java笔记整理列表
整理Java相关知识点. 2018-11-20 1:Java入门学习 2:Java进阶
- JAVA笔记整理(九),JAVA中的集合
在工作中,我们经常需要将多个对象集中存放,可以使用数组,但是数组的长度一旦固定之后是不可变的,为了保存数量确定的数据,我们可以使用JAVA中的集合. 在我看来,JAVA中的集合可以看作是一个特殊的数据 ...
- JAVA笔记整理(六),JAVA中的多态
JAVA引用变量有两个类型:一个是编译时类型,一个运行时类型 编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定.如果编译时类型和运行时类型不一样,就形成了多态. 因为子类其 ...
- JAVA笔记整理(三),JAVA中的类和方法
类 类是JAVA中一个重要的概念,可以把类理解成一个对象的抽象,这个抽象的对象包含了变量(用来描述这个对象的属性)和方法(用来描述这个对象可以干什么),类中的各个成员之间可以相互调用(static修饰 ...
- JAVA笔记整理(四),JAVA中的封装
什么是封装 所谓的封装就是把数据项和方法作为一个独立的整体隐藏在对象的内部,具体的实施细节不对外提现,仅仅保留有限的外部接口,封装外的用户只能通过接口来进行操作.就好比开启一台电脑需要进行很多个步骤, ...
- JAVA笔记整理(七),JAVA几个关键字
本篇主要总结JAVA中的super.this.final.static.break.continue 1.super super主要用在继承当中,表示调用父类的构造函数. 1.如果要在子类方法中调用父 ...
- JAVA笔记整理(二),下载安装JDK
Windows平台 1.登录Oracle官方网站(http://www.oracle.com/index.html),找到下载 2.选择要下载的版本,点击JDK DOWNLOAD 3.下载文件,先勾选 ...
- JAVA笔记整理(一),JAVA介绍
JAVA语言的版本: J2SE(Java2 Platform Standard Edition,java平台标准版),后更名为:JAVA SE J2EE(Java 2 Platform,Enterpr ...
随机推荐
- python学习(十四) 网络编程
14.1 少数几个网络设计模块 14.1.1 socket模块 套接字包括:服务器套接字和客户机套接字. 在创建一个服务器套架字后,让它等待连接,这样它就在摸个网络地址处(IP地址和一个端口号的组合) ...
- linux输入子系统概念介绍
在此文章之前,我们讲解的都是简单的字符驱动,涉及的内容有字符驱动的框架.自动创建设备节点.linux中断.poll机制.异步通知.同步互斥.非阻塞.定时器去抖动. 上一节文章链接:http://blo ...
- BigDecimal进行精确运算demo工具类
package com.js.ai.modules.pointwall.interfac; import java.math.BigDecimal; public class TestDigDecim ...
- Window中的内存地址(小知识)
现在的编辑器大部分工作都是内存管理托管型,所以很少直接对Window的内存地址直接管理了. Window中的内存地址主要是以16进制数字体现的,当操作系统为32位时,那么每个内存地址为2的32次方,也 ...
- 什么是Ajax和JSON,它们的优缺点
什么是Ajax??? 术语Ajax用来描述一组技术,它使浏览器可以为用户提供更为自然的浏览体验. Ajax它是“Asynchronous JavaScript + XML的简写” 定义Ajax: Aj ...
- 实用webpack-dev-server
webpack-dev-server的作用 文件作出改动之后,保存,立即开始编译文件 编译后的文件是保存在内存中的,在项目文件夹中看不到编译后的文件 编译完成之后立即自动刷新浏览器 测试webpack ...
- Ubuntu下编写C语言程序
新建C文件,新建一个文件用touch,新建文件夹用mkdir. 打开文本编辑器,编辑C文件,命令用gedit xxx.C 编写C程序,Ctrl+S保存 编译运行 1.gcc命令是编译 -o是可选项 是 ...
- 前端自动化之ts编译
前端自动化之ts编译 gulp引用包:gulp-tsc gulpfiles.js代码: var typescript = require('gulp-tsc'); gulp.task('compile ...
- C#读写EXCEL(二)
C#读写EXCEL(二) -- ::| 分类: 默认分类 | 标签: |举报 |字号大 中 小 订阅 用微信 “扫一扫” 将文章分享到朋友圈. 用易信 “扫一扫” 将文章分享到朋友圈. 下载LOFTE ...
- MySQL备份还原之一mydumper
1)源码编译安装 1.下载 mydumper源码 2.解压 [mysql@localhost ~]$ tar -xvf mydumper-0.9.1.tar mydumper-0.9.1/CMakeL ...