隐式转换:
byte,short,char -- int -- long -- float -- double
强制转换:
目标类型 变量名 = (目标类型) (被转换的数据);
建议:数据做运算,结果应该是什么类型,就用什么类型接收,不要随意转换类型,否则会有精度的损失。
day02
1:eclipse基本使用
A:创建Java项目:
点击File或者在最左侧空白处,选择Java项目,在界面中写一个项目名称,然后Finish即可。
B:创建包:展开项目,在源包src下建立一个包com.itheima
C:创建类:在com.ithiema包下建立一个类HelloWorld
在界面中写一个类名:HelloWorld,然后finish即可。
D:编写代码
在HelloWorld类写main方法,在main方法中写一条输出语句:我是黑马程序员,我骄傲,我自豪。
E:编译
自动编译,在保存的那一刻帮你做好了
F:运行
选择要运行的文件或者在要运行的文件内容中
右键 -- Run as - Java Application即可
2:eclipse基本配置
A:行号的显示和隐藏
显示:在代码区域的最左边的空白区域,右键 -- Show Line Numbers即可。
隐藏:把上面的动作再做一次。
B:字体大小及颜色
a:Java代码区域的字体大小和颜色:
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Java -- Java Edit Text Font
b:控制台
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Debug -- Console font
c:其他文件
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Basic -- Text Font
* String:字符串类
由多个字符组成的一串数据
字符串其本质是一个字符数组
* 构造方法:
String(String original)
public String(String original):把字符串数据封装成字符串对象
public String(char[] value):把字符数组的数据封装成字符串对象
public String(char[] value, int index, int count):把字符数组中的一部分数据封装成字符串对象
Object:是类层次结构中的根类,所有的类都直接或者间接的继承自该类。
如果一个方法的形式参数是Object,那么这里我们就可以传递它的任意的子类对象。
* String类的判断功能:
public boolean equals(Object obj):比较字符串的内容是否相同
public boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
public boolean startsWith(String str):判断字符串对象是否以指定的str开头
public boolean endsWith(String str):判断字符串对象是否以指定的str结尾
* String类的获取功能:
public int length():获取字符串的长度,其实也就是字符个数
public char charAt(int index):获取指定索引处的字符
public int indexOf(String str):获取str在字符串对象中第一次出现的索引
public String substring(int start):从start开始截取字符串
public String substring(int start,int end):从start开始,到end结束截取字符串。包括start,不包括end
*案例:
遍历字符串(获取字符串中的每一个字符)
统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数。(不考虑其他字符)
* String类的转换功能:
public char[] toCharArray():把字符串转换为字符数组
public String toLowerCase():把字符串转换为小写字符串
public String toUpperCase():把字符串转换为大写字符串
字符串的遍历:
A:length()加上charAt()
B:把字符串转换为字符数组,然后遍历数组
*案例:
键盘录入一个字符串,把该字符串的首字母转成大写,其余为小写。(只考虑英文大小写字母字符)
* 去除字符串两端空格
public String trim()
* 按照指定符号分割字符串
public String[] split(String str)
*案例:
把数组中的数据按照指定个格式拼接成一个字符串
举例:int[] arr = {1,2,3};
输出结果:[1, 2, 3]
字符串反转
举例:键盘录入”abc”
输出结果:”cba”
day09
* StringBuilder:是一个可变的字符串。字符串缓冲区类。
String和StringBuilder的区别:
String的内容是固定的。
StringBuilder的内容是可变的。
* 构造方法:
public StringBuilder()
* 成员方法:
public int capacity():返回当前容量
public int length():返回长度(字符数)
容量:理论值
长度:实际值
* 添加功能
public StringBuilder append(任意类型):添加数据,并返回自身对象
* 反转功能
public StringBuilder reverse()
* StringBuilder和String的相互转换
StringBuilder -- String
public String toString():通过toString()就可以实现把StringBuilder转成String
String -- StringBuilder
StringBuilder(String str):通过构造方法就可以实现把String转成StringBuilder
案例:
在出现E的地方我们使用引用数据类型替换即可
举例:ArrayList<String>,ArrayList<Student>
* 构造方法:
public ArrayList()
* 添加元素:
public boolean add(E e):添加元素
public void add(int index,E element):在指定的索引处添加一个元素
* 获取元素
public E get(int index):返回指定索引处的元素
* 集合长度
public int size():返回集合中的元素的个数
* 删除元素
public boolean remove(Object o):删除指定的元素,返回删除是否成功
public E remove(int index):删除指定索引处的元素,返回被删除的元素
* 修改元素
public E set(int index,E element):修改指定索引处的元素,返回被修改的元素
* ArrayList集合的遍历
通过size()和get()配合实现的
*案例:
A. 定义学生类
B. 学生管理系统的主界面的代码编写
C. 学生管理系统的查看所有学生的代码编写
D. 学生管理系统的添加学生的代码编写
E. 学生管理系统的删除学生的代码编写
F. 学生管理系统的修改学生的代码编写
day10
* io流概述
可以把数据存储到文件,也可以从文件中读取数据
常见应用:
文件的复制(U盘拷贝)
上次图片(微信图片,QQ空间图片)
下载文件(迅雷)
* io流分类
* 输出流(将内存中的数据写出到文件中)
写数据--输出流--FileWriter
* FileWriter 的构造方法:
public FileWriter(String fileName):传递一个文件名称
* 输出流写数据的步骤:
A:创建输出流对象
B:调用输出流对象的写数据方法,并刷新缓冲区
C:释放资源
public class FileWriterDemo {
public static void main(String[] args) throws IOException {
//A:创建输出流对象
FileWriter fw = new FileWriter("d:\\a.txt");
public class CopyFileDemo2 {
public static void main(String[] args) throws IOException {
//创建输入流对象
FileReader fr = new FileReader("FileWriterDemo.java");
//创建输出流对象
FileWriter fw = new FileWriter("Copy.java");
//读写数据
char[] chs = new char[1024];
int len;
while((len=fr.read(chs))!=-1) {
fw.write(chs, 0, len);
}
public class FileToArrayListTest {
public static void main(String[] args) throws IOException {
//创建输入缓冲流对象
BufferedReader br = new BufferedReader(new FileReader("array.txt"));
//创建集合对象
ArrayList<String> array = new ArrayList<String>();